6

Google Cloud 控制台允许从项目内部创建存储桶并编辑访问控制列表。我从我的一个应用程序app1创建了一个存储桶,bucket-foo

现在我想在另一个app2中使用同一个桶。我无法弄清楚如何允许 app2 访问我在 app1 下创建的同一个存储桶。

4

2 回答 2

7

您可以将 app2 的服务帐号添加到存储桶的 ACL 列表中,以允许应用访问存储桶。

首先你需要找到应用程序的服务账户名称,它在管理控制台的应用程序设置页面中列出,但它也只是<app-id>@appspot.gservicaccount.com

然后将该帐户添加到 bucket-foo 的 ACL 中gsutil acl ch,方法是将 app2 的服务帐户添加到 ACL 列表中。

最后大概是这样的:

gsutil acl ch -u -R app2@appspot.gserviceaccount.com:WRITE gs://bucket-foo
于 2013-12-22T15:51:36.883 回答
1

这个谷歌文档对我有用:https ://cloud.google.com/appengine/docs/python/console/datastoreadmin?hl=lv#restoreing_data_to_another_app

将数据恢复到另一个应用程序

如果您使用 Google Cloud Storage 备份数据,则可以将备份恢复到用于创建备份的应用程序以外的应用程序。

要将备份数据从一个应用程序恢复到另一个应用程序:

  1. 使用 Google Cloud Platform Console,找到包含用于备份的存储桶的项目,并将目标应用程序(您要还原到的应用程序的 App Engine 默认服务帐户电子邮件)添加到具有编辑权限的项目团队。
  2. 在要复制数据的应用程序中进行新备份。上一步中设置的权限不会追溯至现有备份,因此目标应用程序将无法访问那些较早的备份。目标应用程序只能访问在被授予权限后所做的备份。
  3. (可选)为您的目标应用禁用 Datastore 写入。(这通常是一个好主意,以避免还原与写入数据存储的任何新数据之间发生冲突。)
  4. 转到目标应用程序的管理员页面,然后单击打开数据存储区管理员。
  5. 在标签为“导入备份信息”按钮旁边的文本框中,指定包含备份的存储桶,格式为 /gs/my_bucket。这将导致显示该存储桶中所有备份的列表。或者,提供特定备份的文件句柄;可以通过选择备份并单击信息从源应用程序获取句柄;文件句柄出现在标签句柄旁边。
  6. 单击导入备份信息。
  7. 生成的选择页面显示您指定的存储桶的可用备份,除非您通过其句柄指定备份。选择所需的备份并单击以下选项之一: 添加到备份列表如果您希望此备份保留在应用程序的可用备份列表中。如果您想从此备份恢复但不希望备份显示在您的应用程序的可用备份列表中,则从备份恢复。
  8. 在显示的咨询页面中,请注意带有复选框的实体列表。默认情况下,将恢复所有实体。取消选中您不想恢复的每个实体旁边的复选框。
  9. 同样在咨询页面中,请注意默认队列及其预配置的性能设置用于还原作业。如果您需要不同的队列性能特征,请将其更改为您已以不同方式配置的另一个队列。
  10. 单击还原开始还原。请注意,将显示作业状态页面。
  11. 如果您禁用了写入,请为您的应用程序重新启用 Datastore 写入。
于 2016-03-01T05:19:26.943 回答