S3 桶名不用再抢了:Account Regional Namespaces 来了

S3 桶名不用再抢了:Account Regional Namespaces 来了

用 Amazon S3 最烦的事之一:想好的桶名永远被占。因为桶名全球唯一,热门名字早就没了。

上周亚马逊云科技发了 S3 Account Regional Namespaces。简单说:你的账号有了专属命名空间,桶名只要在你的账号+区域内不重复就行。

桶名格式

复制代码
{名字}-{账号ID}-{区域}-an

比如 my-data-123456789012-us-east-1-an。别的账号用不了你的后缀。

CLI 创建

bash 复制代码
aws s3api create-bucket \
  --bucket my-data-123456789012-us-east-1-an \
  --bucket-namespace account-regional \
  --region us-east-1

Python SDK

python 复制代码
import boto3

s3 = boto3.client('s3')
sts = boto3.client('sts')

account_id = sts.get_caller_identity()['Account']
region = s3.meta.region_name
bucket_name = f"my-data-{account_id}-{region}-an"

params = {"Bucket": bucket_name, "BucketNamespace": "account-regional"}
if region != "us-east-1":
    params["CreateBucketConfiguration"] = {"LocationConstraint": region}

s3.create_bucket(**params)

CloudFormation

yaml 复制代码
Resources:
  MyBucket:
    Type: AWS::S3::Bucket
    Properties:
      BucketNamePrefix: 'my-data'
      BucketNamespace: 'account-regional'

BucketNamePrefix 自动拼接后缀,连账号 ID 都不用写。

安全:强制用新命名空间

新的 condition key s3:x-amz-bucket-namespace,在 IAM 或 SCP 里可以要求所有新桶必须走 account-regional namespace。从组织层面统一管理。

注意事项

  • 现有桶不能改名迁移
  • 只支持通用桶(Table/Vector/Directory Buckets 已有账号级命名空间)
  • 前缀+后缀总共 3-63 字符
  • 免费,37 个区域可用

桶名冲突这个老问题终于有了官方解法。新建桶建议直接用。

相关推荐
A小辣椒1 天前
AWS Clould Support Engineer就职面试题
aws
亚林瓜子4 天前
AWS WAF中如何放行某个触发了托管规则的接口
aws·waf
悠悠121386 天前
AWS DevOps Agent 体验一周后,我决定把 oncall 手机调成静音了
云计算·aws·devops
yyuuuzz6 天前
独立站运营的几个技术层面常见问题
大数据·运维·服务器·网络·数据库·aws
yyuuuzz6 天前
游戏云服务器推荐的技术选择思路
大数据·运维·服务器·游戏·云计算·aws
kernelcraft7 天前
Boto3:Python 操作 AWS 的官方 SDK
开发语言·python·其他·aws
普通网友14 天前
Serverless 框架:多云函数部署(AWS + 阿里云 + 腾讯云)
阿里云·serverless·aws
TG_yunshuguoji15 天前
亚马逊云代理商:如何用 CloudWatch+Lambda 打造自动化告警系统
大数据·运维·自动化·云计算·aws
yyuuuzz15 天前
独立站搭建的几个核心技术问题
运维·服务器·网络·数据库·aws
yyuuuzz15 天前
aws亚马逊云服务的基础认知与常见场景
大数据·运维·服务器·网络·云计算·aws