【问题标题】:Google storage for each user每个用户的 Google 存储空间
【发布时间】:2012-07-29 09:20:02
【问题描述】:

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

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

【问题讨论】:

  • 您需要提供有关您的 senario 的更多信息。
  • 存储还是数据库?它不一样。

标签: google-app-engine google-cloud-storage


【解决方案1】:

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

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

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

【讨论】:

    【解决方案2】:

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


    对于数据库 AppEngine 数据存储有能力separate the data by namespaces。这不需要任何用户帐户,您有责任为每个请求选择使用哪个命名空间。

    【讨论】:

    • 我宁愿不使用谷歌帐户进行身份验证。有可能吗?
    【解决方案3】:

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2023-03-05
      • 1970-01-01
      • 2020-11-02
      • 1970-01-01
      • 1970-01-01
      • 2021-01-14
      • 2013-01-04
      • 2018-10-19
      • 1970-01-01
      相关资源
      最近更新 更多