本页面介绍了如何设置存储桶的 Identity and Access Management (IAM) 政策,以便您可以控制对这些存储桶中的对象和托管式文件夹的访问权限。
如果您要查找其他访问权限控制方法,请参阅以下资源:
如需了解如何更精细地控制对象组,请参阅设置和管理托管式文件夹的 IAM 政策。
如需了解控制存储桶中个别对象的访问权限的其他方法,请参阅访问控制列表。
如需详细了解如何控制 Cloud Storage 资源的访问权限,请参阅访问权限控制概览。
所需的角色
如需获得设置和管理存储桶的 IAM 政策所需的权限,请让管理员向您授予存储桶的 Storage Admin (roles/storage.admin
) IAM 角色。
此角色包含以下权限,这些权限是设置和管理存储桶的 IAM 政策所需的权限:
storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.setIamPolicy
storage.buckets.update
storage.buckets.list
- 仅当您计划使用Trusted Cloud 控制台执行本页面上的任务时,才需要此权限。
您还可以通过自定义角色获得这些权限。
将主账号添加到存储桶级层政策中
如需查看与 Cloud Storage 关联的角色列表,请参阅 IAM 角色。如需了解可授予 IAM 角色的实体,请参阅主账号标识符。
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要为主账号授予角色的存储桶的名称。
选择页面顶部附近的权限标签。
点击 add_box 授予访问权限按钮。
系统会显示“添加主账号”对话框。
在新主账号字段中,输入需要访问您存储桶的一个或多个身份。
从选择角色下拉菜单中选择一个或多个角色。 您选择的角色将显示在窗格中,其中包含对角色授予的权限的简短说明。
点击保存。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
使用 buckets add-iam-policy-binding
命令:
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=PRINCIPAL_IDENTIFIER --role=IAM_ROLE
其中:
客户端库
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。创建一个包含以下信息的 JSON 文件:
{ "bindings":[ { "role": "IAM_ROLE", "members":[ "PRINCIPAL_IDENTIFIER" ] } ] }
其中:
IAM_ROLE
是您要授予的 IAM 角色。例如roles/storage.objectViewer
。PRINCIPAL_IDENTIFIER
标识您要授予存储桶访问权限的身份。例如user:example-service-account@example-project.s3ns.iam.gserviceaccount.com
。如需查看主账号标识符格式的列表,请参阅主账号标识符。
使用
cURL
,通过PUT setIamPolicy
请求调用 JSON API:curl -X PUT --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中:
JSON_FILE_NAME
是您在第 2 步中创建的文件的路径。BUCKET_NAME
是您要为主账号授予对其访问权限的存储桶的名称。例如my-bucket
。
查看存储桶的 IAM 政策
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要查看其政策的存储桶的名称。
在存储桶详情页面中,点击配置标签页。
应用于存储桶的 IAM 政策显示在权限部分中。
可选:使用过滤条件栏过滤结果。
如果按主账号进行搜索,结果中将显示主账号所获得的每个角色。
命令行
gcloud storage buckets get-iam-policy gs://BUCKET_NAME
其中 BUCKET_NAME
是您要查看 IAM 政策的存储桶的名称。例如 my-bucket
。
客户端库
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。使用
cURL
,通过GET getIamPolicy
请求调用 JSON API:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中
BUCKET_NAME
是您要查看 IAM 政策的存储桶的名称。例如my-bucket
。
从存储桶级层政策中移除主账号
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要从中移除主账号角色的存储桶的名称。
在存储桶详情页面中,点击配置标签页。
应用于存储桶的 IAM 政策显示在权限部分中。
在按主账号查看标签页中,选中要移除的主账号的复选框。
点击移除访问权限按钮。
在出现的叠加窗口中,点击确认。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
使用 buckets remove-iam-policy-binding
命令:
gcloud storage buckets remove-iam-policy-binding gs://BUCKET_NAME --member=PRINCIPAL_IDENTIFIER --role=IAM_ROLE
其中:
客户端库
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。获取应用于存储桶的现有政策。为此,请使用
cURL
通过GET getIamPolicy
请求调用 JSON API:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中
BUCKET_NAME
是您要查看 IAM 政策的存储桶的名称。例如my-bucket
。创建一个包含您在上一步中检索的政策的 JSON 文件。
修改 JSON 文件以从政策中移除该主账号。
使用
cURL
,通过PUT setIamPolicy
请求调用 JSON API:curl -X PUT --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中:
JSON_FILE_NAME
是您在第 3 步中创建的文件的路径。BUCKET_NAME
是您要移除对其访问权限的存储桶的名称,例如my-bucket
。
在存储桶上使用 IAM Conditions
以下各个部分介绍如何在存储桶中添加和移除 IAM Conditions。如需查看存储桶的 IAM Conditions,请参阅查看存储桶的 IAM 政策。如需详细了解如何将 IAM Conditions 与 Cloud Storage 搭配使用,请参阅 Conditions。
您必须先对存储桶启用统一存储桶级层访问权限,然后才能添加条件。
为存储桶设置新条件
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要为其添加新条件的存储桶的名称。
在存储桶详情页面中,点击配置标签页。
应用于存储桶的 IAM 政策显示在权限部分中。
点击 + 授予访问权限。
对于新主账号,填写您要向其授予存储桶访问权限的主账号。
对于您要应用条件的每个角色:
选择要授予主账号的角色。
点击添加条件,以打开修改条件表单。
填写条件的标题。说明字段为选填字段。
使用条件构建器直观地构建条件,或使用条件编辑器标签页输入 CEL 表达式。
点击保存可返回添加主账号表单。如需添加多个角色,请点击添加其他角色。
点击保存。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
创建用于定义条件的 JSON 或 YAML 文件,包括条件的
title
和条件的基于特性的逻辑expression
,还可以选择包括条件的description
。将
buckets add-iam-policy-binding
命令与--condition-from-file
标志结合使用:
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=PRINCIPAL_IDENTIFIER --role=IAM_ROLE --condition-from-file=CONDITION_FILE
其中:
BUCKET_NAME
是您要为主账号授予对其访问权限的存储桶的名称。例如my-bucket
。PRINCIPAL_IDENTIFIER
标识应用条件的身份。例如user:example-service-account@example-project.s3ns.iam.gserviceaccount.com
。如需查看主账号标识符格式的列表,请参阅主账号标识符。IAM_ROLE
是您要向主账号授予的 IAM 角色,例如roles/storage.objectViewer
。CONDITION_FILE
是您在上一步中创建的文件。
或者,您可以使用 --condition
标志直接在命令中添加条件,而不是使用 --condition-from-file
标志。
客户端库
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。使用
GET getIamPolicy
请求将存储桶的 IAM 政策保存到临时 JSON 文件中:curl \ 'https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' > tmp-policy.json
其中
BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。在文本编辑器中编辑
tmp-policy.json
文件,以便向 IAM 政策中的绑定添加新条件:{ "version": VERSION, "bindings": [ { "role": "IAM_ROLE", "members": [ "PRINCIPAL_IDENTIFIER" ], "condition": { "title": "TITLE", "description": "DESCRIPTION", "expression": "EXPRESSION" } } ], "etag": "ETAG" }
其中:
VERSION
是 IAM 政策的版本,对于具有 IAM Conditions 的存储分区来说,该值需要为 3。IAM_ROLE
是应用条件的角色。例如roles/storage.objectViewer
。PRINCIPAL_IDENTIFIER
标识应用条件的身份。例如user:example-service-account@example-project.s3ns.iam.gserviceaccount.com
。 如需查看主账号标识符格式的列表,请参阅主账号标识符。TITLE
是条件的标题。例如expires in 2019
。DESCRIPTION
是条件的可选说明。例如Permission revoked on New Year's
。EXPRESSION
是基于特性的逻辑表达式。例如request.time < timestamp(\"2019-01-01T00:00:00Z\")
。如需查看表达式的更多示例,请参阅条件特性参考。请注意,Cloud Storage 仅支持日期/时间、资源类型和资源名称特性。
请勿修改
ETAG
。使用
PUT setIamPolicy
请求为存储桶设置修改后的 IAM 政策:curl -X PUT --data-binary @tmp-policy.json \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中
BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。
从存储桶中移除条件
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要从中移除条件的存储桶的名称。
在存储桶详情页面中,点击配置标签页。
应用于存储桶的 IAM 政策显示在权限部分中。
点击与条件相关联的主账号对应的修改图标 edit。
在显示的修改访问权限叠加层中,点击您希望删除的条件的名称。
在显示的修改条件叠加层中,点击删除,然后点击确认。
点击保存。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
使用
buckets get-iam-policy
命令将存储桶的 IAM 政策保存到临时 JSON 文件中。gcloud storage buckets get-iam-policy gs://BUCKET_NAME > tmp-policy.json
在文本编辑器中编辑
tmp-policy.json
文件以从 IAM 政策中移除条件。使用
buckets set-iam-policy
为存储桶设置修改后的 IAM 政策。gcloud storage buckets set-iam-policy gs://BUCKET_NAME tmp-policy.json
代码示例
C++
如需了解详情,请参阅 Cloud Storage C++ API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
C#
如需了解详情,请参阅 Cloud Storage C# API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Go
如需了解详情,请参阅 Cloud Storage Go API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Java
如需了解详情,请参阅 Cloud Storage Java API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Node.js
如需了解详情,请参阅 Cloud Storage Node.js API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
PHP
如需了解详情,请参阅 Cloud Storage PHP API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Python
如需了解详情,请参阅 Cloud Storage Python API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
Ruby
如需了解详情,请参阅 Cloud Storage Ruby API 参考文档。
如需向 Cloud Storage 进行身份验证,请设置应用默认凭证。如需了解详情,请参阅为客户端库设置身份验证。
在运行代码示例之前,请将 GOOGLE_CLOUD_UNIVERSE_DOMAIN
环境变量设置为 s3nsapis.fr
。
REST API
JSON
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。使用
GET getIamPolicy
请求将存储桶的 IAM 政策保存到临时 JSON 文件中:curl \ 'https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' > tmp-policy.json
其中
BUCKET_NAME
是您要授予其访问权限的存储桶的名称。例如my-bucket
。在文本编辑器中编辑
tmp-policy.json
文件以从 IAM 政策中移除条件。使用
PUT setIamPolicy
请求为存储桶设置修改后的 IAM 政策:curl -X PUT --data-binary @tmp-policy.json \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/iam"
其中
BUCKET_NAME
是您要修改其 IAM 政策的存储桶的名称。例如my-bucket
。
最佳做法
您应设置为主账号授予必需的访问权限所需的最低权限角色。例如,如果团队成员只需要读取存储在存储桶中的对象,请为其授予 Storage Object Viewer (roles/storage.objectViewer
) 角色,而不是 Storage Object Admin (roles/storage.objectAdmin
) 角色。同样,如果团队成员需要完全控制存储桶中的对象而非存储桶本身,请为其授予 Storage Object Admin (roles/storage.objectAdmin
) 角色,而不是 Storage Admin (roles/storage.admin
) 角色。
后续步骤
- 了解如何公开共享您的数据。
- 查看具体的共享和协作示例。
- 了解使用 IAM 时的最佳做法。
- 了解如何为存储桶使用角色建议。
- 如需排查与 IAM 角色和权限相关的失败操作的问题,请参阅问题排查。