我每个帐户都有两个Google服务凭据和一个存储桶。我必须将文件从一个存储桶传输到另一个存储桶。我该如何做程序化盟友? 是否可以使用两个存储对象或使用Cloud Storage Transfer服务来实现?
答案 0 :(得分:2)
是的,使用Storage Transfer Service,您可以创建传输作业并将数据发送到目标存储桶(在另一个项目中),请记住,documented是:
要访问数据源和数据接收器,此服务帐户必须 具有源权限和接收器权限。
这意味着您不能使用两个不同的服务帐户,只需要授予对您拥有的两个服务帐户之一的访问权限即可。
如果要以编程方式将文件从一个存储桶传输到另一个存储桶。首先,您必须授予与存储传输服务关联的服务帐户的权限,这样它才能访问数据接收器(目标存储桶),请按照these steps进行操作。
请注意,如果您不在源存储桶所在的同一项目中创建传输作业,则必须grant permissions to access it。
使用Storage Transfer Service,您可以使用Java和Python以编程方式创建传输作业,示例包括创建传输作业和检查传输操作状态。可以找到Java和Python的完整代码示例。