我想创建包含桌面应用程序和谷歌云存储的应用程序。因此,我的每个客户端都应该有单独的云存储。谷歌提供这样的东西吗?
更多信息。 因为我不知道什么可以提供谷歌应用程序引擎我写了这个问题。 我需要为我的桌面应用程序托管一些数据库。将来我想我会切换到GWT和app引擎。我想卖掉我的应用程序,以便每个客户端都无法访问我的其他客户端数据库。我认为如果每个客户端都有一个单独的数据库中的数据会更安全,所以我不能在代码中犯一些错误。
答案 0 :(得分:1)
您可以使用Google App引擎上的命名空间分隔数据存储区中的数据:
https://developers.google.com/appengine/docs/java/multitenancy/multitenancy
由您决定如何实现命名空间。您可以通过用户身份验证系统将它们分开。
答案 1 :(得分:0)
您可以为每个客户创建一个文件夹,并限制文件夹对用户的访问权限(仅适用于Google帐户),或者您可以对存储桶执行相同的操作,为每个用户创建一个存储桶(如果您有很多用户,这可能是一个开销用户)。
对于数据库,AppEngine数据存储区可以separate the data by namespaces。这不需要任何用户帐户,并且您有责任选择使用哪个命名空间来处理每个请求。
答案 2 :(得分:0)
如果没有Google身份验证,您可以使用@dragonx上面提到的GAE命名空间功能。
使用客户端名称作为命名空间标识符(需要是唯一的)。如何获取此客户端名称取决于您。如果您愿意,可以将其存储在GAE中,也可以从特定于客户端的URL中解密。
请查看GAE多租户链接https://developers.google.com/appengine/docs/java/multitenancy/multitenancy
此处的示例可以很容易地适应每个客户端使用任何字符串标识符。