0

我想创建由桌面应用程序和谷歌云存储组成的应用程序。所以,我的每个客户都应该有单独的云存储。谷歌提供这样的东西吗?

更多信息。因为我不知道什么可以提供谷歌应用引擎我写了这个问题。我的桌面应用程序需要一些数据库托管。将来我想我会切换到 GWT 和应用程序引擎。我想出售我的应用程序,这样我的每个客户都无法访问我的其他客户数据库。我在想如果每个客户端都在单独的数据库中拥有数据会更安全,这样我就不会在代码中犯一些错误。

4

3 回答 3

1

您可以使用谷歌应用引擎上的命名空间来分隔数据存储区中的数据:

https://developers.google.com/appengine/docs/java/multitenancy/multitenancy

由您决定如何实现命名空间。您可以通过您的用户身份验证系统将它们分开。

于 2012-07-30T03:31:01.150 回答
0

您可以使用上面@dragonx 指出的 GAE 命名空间功能,无需 Google 身份验证。

使用客户端名称作为命名空间标识符(需要唯一)。如何获取此客户名称取决于您。如果您愿意,它可以存储在 GAE 本身中,或者可以从特定于客户端使用的 url 中破译。

请查看 GAE 多租户链接https://developers.google.com/appengine/docs/java/multitenancy/multitenancy

这里的示例可以很容易地适应每个客户端使用任何字符串标识符。

于 2012-07-30T16:34:39.410 回答
0

您可以为每个客户端创建一个文件夹并将文件夹访问权限限制为用户(仅适用于 Google 帐户),或者您可以对存储桶执行相同操作,为每个用户创建一个存储桶(如果您有很多用户,这可能是一个开销) .


对于数据库 AppEngine 数据存储区能够按命名空间分隔数据。这不需要任何用户帐户,您有责任为每个请求选择使用哪个命名空间。

于 2012-07-29T09:36:55.477 回答