PutBucket 操作を呼び出してバケットを作成できます。
注意事項
Alibaba Cloud アカウントは、各リージョンで最大 100 個のバケットを作成できます。
各リージョンには対応するエンドポイントがあります。リージョンとエンドポイントの詳細については、「エンドポイントとデータセンター」をご参照ください。
Alibaba Cloud アカウントを使用して同じバケットに対して複数の PutBucket リクエストを送信すると、最初のリクエストでバケットが作成され、後続のリクエストでバケットのアクセス制御リスト (ACL) などのバケットメタデータが変更されます。複数の PutBucket リクエストを送信すると、バケットのメタデータが上書きされる可能性があります。注意して進めてください。
2025 年 10 月 13 日 10:00 (UTC+08:00) から、OSS はすべてのリージョンで段階的な調整を実施し、API、OSS SDK、または ossutil を使用して作成された新しいバケットに対して、デフォルトでブロックパブリックアクセスを有効にします。各リージョンで調整が有効になる正確な時刻の詳細については、「[公式発表] 新規作成バケットのパブリックアクセスブロック設定の調整」をご参照ください。ブロックパブリックアクセスが有効になると、パブリック ACL (公開読み取りおよび公開読み書き) やパブリックアクセスを許可するバケットポリシーなど、パブリックアクセス権限を設定できなくなります。ビジネスでパブリックアクセスが必要な場合は、バケットの作成後にこの機能を無効にできます。
権限
デフォルトでは、Alibaba Cloud アカウントは完全な権限を持っています。Alibaba Cloud アカウント下の RAM ユーザーまたは RAM ロールは、デフォルトでは何の権限も持っていません。Alibaba Cloud アカウントまたはアカウント管理者は、RAM ポリシーまたはバケットポリシーを介して操作権限を付与する必要があります。
API | アクション | 定義 |
PutBucket |
| バケットを作成します。 |
| バケットを作成した後、バケット ACL を変更するにはこの権限が必要です。 |
リクエスト構文
PUT / HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
x-oss-acl: Permission
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<CreateBucketConfiguration>
<StorageClass>Standard</StorageClass>
</CreateBucketConfiguration>リクエストヘッダー
ヘッダー | タイプ | 必須 | 例 | 説明 |
x-oss-acl | String | いいえ | private | バケットの ACL。有効な値:
バケット ACL の詳細については、「バケット ACL の設定」をご参照ください。 |
x-oss-resource-group-id | String | いいえ | rg-aek27tc**** | リソースグループの ID。
リソースグループ ID は、Resource Management コンソールで取得するか、ListResourceGroups 操作を呼び出すことで取得できます。詳細については、「リソースグループの基本情報の表示」および「ListResourceGroups」をご参照ください。 |
x-oss-bucket-tagging | String | いいえ | k1=v1&k2=v2 | バケットのタグ。 |
x-oss-hns-status | String | いいえ | disabled | バケットの階層型名前空間機能を有効にするかどうかを指定します。 階層型名前空間機能は、バケットの作成時にのみ有効にできます。既存のバケットの階層型名前空間のステータスは変更できません。
|
x-oss-server-side-encryption | String | いいえ | AES256 | デフォルトのサーバー側暗号化方式。 有効な値: KMS、AES256 説明 OSS on CloudBox のシナリオでは、AES256 のみがサポートされます。 KMS キーを使用する場合、KMS API 操作の呼び出しには少額の料金がかかります。詳細については、「KMS の料金」をご参照ください。 クロスリージョンレプリケーションを使用する場合、宛先バケットでデフォルトのサーバー側暗号化が有効になっており、レプリケーションルールで ReplicaCMKID が設定されている場合、次のケースが適用されます。
詳細については、「クロスリージョンレプリケーションとサーバー側暗号化」をご参照ください。 |
x-oss-server-side-encryption-key-id | String | いいえ | 9468da86-3509-4f8d-a61e-6eab1eac**** | KMS キーの ID。このヘッダーは、x-oss-server-side-encryption が KMS に設定されていて、暗号化に指定されたキーを使用する場合に必要です。その他の場合、このヘッダーは空でなければなりません。 OSS on CloudBox を使用する場合、このパラメーターはサポートされていません。 |
この操作では、共通のリクエストヘッダーも使用します。詳細については、「共通リクエストヘッダー」をご参照ください。
リクエスト要素
名前 | タイプ | 必須 | 例 | 説明 |
StorageClass | String | いいえ | Standard | バケットのストレージクラス。有効な値:
親ノード: CreateBucketConfiguration 子ノード: なし |
DataRedundancyType | String | いいえ | LRS | バケットのデータ冗長タイプ。有効な値:
親ノード: CreateBucketConfiguration 子ノード: なし |
レスポンスヘッダー
ヘッダー | タイプ | 例 | 説明 |
Location | String | /oss-example | バケットのアドレス。スラッシュ (/) とバケット名で構成されます。 デフォルト値: なし |
この操作では、共通のレスポンスヘッダーも使用します。詳細については、「共通レスポンスヘッダー」をご参照ください。
例
デフォルトのリソースグループにバケットを作成する
PUT / HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Thu, 17 Apr 2025 03:15:40 GMT x-oss-acl: private Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e <?xml version="1.0" encoding="UTF-8"?> <CreateBucketConfiguration> <StorageClass>Standard</StorageClass> <DataRedundancyType>LRS</DataRedundancyType> </CreateBucketConfiguration>レスポンスの例
HTTP/1.1 200 OK x-oss-request-id: 534B371674E88A4D8906**** Date: Fri, 24 Feb 2017 03:15:40 GMT Content-Length: 0 Connection: keep-alive Server: AliyunOSS Location: /oss-example特定のリソースグループにバケットを作成する
リクエストの例
PUT / HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Thu, 17 Apr 2025 03:15:40 GMT x-oss-acl: private x-oss-resource-group-id: rg-aek27tc******** Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e <?xml version="1.0" encoding="UTF-8"?> <CreateBucketConfiguration> <StorageClass>Standard</StorageClass> </CreateBucketConfiguration>レスポンスの例
HTTP/1.1 200 OK x-oss-request-id: 534B371674E88A4D8906**** Date: Fri, 24 Feb 2017 03:15:40 GMT Content-Length: 0 Connection: keep-alive Server: AliyunOSS Location: /oss-example
SDK
次のプログラミング言語の SDK を使用して PutBucket 操作を呼び出すことができます。
ossutil
PutBucket 操作に対応する ossutil コマンドの詳細については、「put-bucket」をご参照ください。
エラーコード
エラーコード | HTTP ステータスコード | 説明 |
InvalidBucketName | 400 | 指定されたバケット名が命名規則に従っていません。 |
AccessDenied | 403 | エラーの原因として考えられるもの:
|
TooManyBuckets | 400 | 作成されたバケットの数が上限を超えています。Alibaba Cloud アカウントは、1 つのリージョンで最大 100 個のバケットを作成できます。 |
BucketAlreadyExists | 409 |
|