本页面介绍了如何在存储桶中保持启用 IP 过滤的情况下,删除单个或多个存储桶 IP 过滤规则。删除规则会移除相应规则授予的网络访问权限。
所需的角色
如需获得删除存储桶 IP 过滤规则所需的权限,请让您的管理员为您授予存储桶的 Storage Admin (roles/storage.admin) 角色。此角色包含删除存储桶 IP 过滤规则所需的权限。
如需查看所需的确切权限,请展开所需权限部分:
所需权限
storage.buckets.updatestorage.buckets.setIpFilter
您还可以通过自定义角色获得这些权限。 此外,您可能也可以通过其他预定义角色来获取这些权限。要查看哪些角色与哪些权限相关联,请参阅适用于 Cloud Storage 的 IAM 角色。
如需了解如何授予存储桶的角色,请参阅为存储桶设置和管理 IAM 政策。
删除存储桶的 IP 过滤规则
控制台
在 Google Cloud 控制台中,前往 Cloud Storage 存储桶页面。
在存储桶列表中,点击要更新的存储桶的名称。
在存储桶详情页面上,点击配置标签页。
在权限部分中,前往 IP 过滤。然后,点击 修改 IP 过滤配置。
IP 过滤页面会显示所有已配置的 IP 过滤规则。
选中要删除的每个规则对应的复选框。
点击删除。
如需确认要删除规则,请在删除字段中输入
DELETE。点击删除。
系统会显示一条通知消息,确认规则已删除。
gcloud
如需查看存储桶的 IP 过滤配置并将其保存到 JSON 文件中,请在开发环境中运行
gcloud storage buckets describe命令:gcloud storage buckets describe gs://BUCKET_NAME --format="json(ipFilter)" > JSON_FILE_NAME
其中:
BUCKET_NAME是您的存储分区的名称。JSON_FILE_NAME是包含存储桶设置的 JSON 文件的名称。
修改 JSON 文件,以从
publicNetworkSource.allowedIpCidrRanges列表或vpcNetworkSources列表中移除要删除的特定 IP 范围或 VPC 网络来源。以下示例展示了如何更新 JSON 文件以删除公共 IP 范围
192.0.2.0/24:// Original configuration (Before deletion) { "publicNetworkSource": { "allowedIpCidrRanges": ["192.0.2.0/24", "203.0.113.0/24"] }, // ... other settings ... }
// Updated configuration (After deletion - '192.0.2.0/24' is excluded) { "publicNetworkSource": { "allowedIpCidrRanges": ["203.0.113.0/24"] }, // ... other settings ... }
如需应用更新后的配置,请在开发环境中运行
gcloud storage buckets update命令:gcloud storage buckets update gs://BUCKET_NAME --ip-filter-file=JSON_FILE_NAME
其中
BUCKET_NAME是您的存储分区的名称。JSON_FILE_NAME是包含存储桶设置的 JSON 文件的名称。
JSON API
安装并初始化 gcloud CLI,以便为
Authorization标头生成访问令牌。如需获取存储桶的元数据(包括
ipFilter配置),请使用GET请求:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME"
创建一个 JSON 文件,并将
GET请求的输出中的ipFilter对象复制到此文件中。修改 JSON 文件,以从
publicNetworkSource.allowedIpCidrRanges列表或vpcNetworkSources列表中移除要删除的特定 IP 范围或 VPC 网络来源。使用
cURL,通过 PATCH bucket 请求调用 JSON API,并提供修改后的ipFilter对象:curl -X PATCH --data-binary JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?project=PROJECT_ID"
其中:
JSON_FILE_NAME是包含存储桶 IP 过滤设置的 JSON 文件的名称。BUCKET_NAME是您的存储分区的名称。PROJECT_ID是与您的存储桶相关联的项目的 ID。
后续步骤
亲自尝试
如果您是 Google Cloud 新手,请创建一个账号来评估 Cloud Storage 在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
免费试用 Cloud Storage