すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:PutBucketEncryption

最終更新日:Jul 29, 2025

この操作を呼び出して、バケットの暗号化ルールを設定できます。

注意事項

oss:PutBucketEncryption 権限は、バケットの暗号化ルールを設定するために必要です。 詳細については、「RAM ユーザーにカスタムポリシーをアタッチする」をご参照ください。

説明

バケットの所有者または承認された RAM ユーザーのみが、バケットの暗号化ルールを設定できます。 それ以外の場合は、OSS は 403 エラーを返します。 バケット暗号化の詳細については、「サーバー側暗号化」をご参照ください。

リクエスト構造

PUT /? encryption HTTP/1.1
Date: GMT Date
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue
<? xml version="1.0" encoding="UTF-8"? >
<ServerSideEncryptionRule>
  <ApplyServerSideEncryptionByDefault>
    <SSEAlgorithm>AES256</SSEAlgorithm>
    <KMSMasterKeyID></KMSMasterKeyID>
  </ApplyServerSideEncryptionByDefault>
</ServerSideEncryptionRule>

リクエスト要素

要素

タイプ

必須

説明

ServerSideEncryptionRule

コンテナー

はい

該当なし

サーバー側暗号化ルールを格納するコンテナー。

子ノード: ApplyServerSideEncryptionByDefault

ApplyServerSideEncryptionByDefault

コンテナー

はい

該当なし

デフォルトのサーバー側暗号化方式を格納するコンテナー。

子ノード: SSEAlgorithm および KMSMasterKeyID

SSEAlgorithm

文字列

はい

AES256

デフォルトのサーバー側暗号化方式。

有効な値: KMS、AES256。

説明

クラウドボックスの OSS を使用する場合、AES-256 のみがサポートされます。

CMK を使用してデータを暗号化または復号化する場合、API 操作の呼び出しに対して課金されます。 料金の詳細については、「KMS 料金」をご参照ください。

クロスリージョン レプリケーションでは、デスティネーション バケットにデフォルトのサーバー側暗号化方式が設定されており、レプリケーション ルールに ReplicaCMKID が設定されている場合:

  • ソース バケット内のオブジェクトが暗号化されていない場合、レプリケーション後にデスティネーション バケットのデフォルトの暗号化方式を使用して暗号化されます。

  • ソース バケット内のオブジェクトが SSE-KMS または SSE-OSS を使用して暗号化されている場合、レプリケーション後に同じ方法を使用して暗号化されます。

詳細については、「サーバー側暗号化でクロスリージョン レプリケーションを使用する」をご参照ください。

KMSDataEncryption

文字列

いいえ

SM4

オブジェクトの暗号化に使用されるアルゴリズム。 この要素が指定されていない場合、オブジェクトは AES256 を使用して暗号化されます。 この要素は、SSEAlgorithm の値が KMS に設定されている場合にのみ有効です。

有効な値: SM4。

クラウドボックスの OSS を使用する場合、このパラメーターはサポートされていません。

KMSMasterKeyID

文字列

いいえ

9468da86-3509-4f8d-a61e-6eab1eac****

SSEAlgorithm が KMS に設定され、指定された CMK が暗号化に使用される場合に指定する必要がある CMK ID。 それ以外の場合は、この要素を null に設定する必要があります。

クラウドボックスの OSS を使用する場合、このパラメーターはサポートされていません。

PutBucketEncryption リクエストに含まれる Host や Date などの他の一般的なリクエスト ヘッダーの詳細については、「一般的なリクエスト ヘッダー」をご参照ください。

レスポンス ヘッダー

DescribeRegions リクエストへのレスポンスのすべてのヘッダーは、一般的なレスポンス ヘッダーです。 詳細については、「一般的なレスポンス ヘッダー」をご参照ください。

  • サンプル リクエスト

    • 暗号化方式を SSE-KMS に設定する

      oss-example という名前のバケットの暗号化方式を SSE-KMS に設定するには、次のサンプル リクエストを送信できます。

      PUT /? encryption HTTP/1.1
      Date: Thu, 17 Apr 2025 11:09:13 GMT
      Content-Length: ContentLength
      Content-Type: application/xml
      Host: oss-example.oss-cn-hangzhou.aliyuncs.com
      Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
      <? xml version="1.0" encoding="UTF-8"? >
      <ServerSideEncryptionRule>
        <ApplyServerSideEncryptionByDefault>
          <SSEAlgorithm>KMS</SSEAlgorithm>
          <KMSMasterKeyID>9468da86-3509-4f8d-a61e-6eab1eac****</KMSMasterKeyID>
        </ApplyServerSideEncryptionByDefault>
      </ServerSideEncryptionRule>
  • サンプル レスポンス

    HTTP/1.1 200 OK
    x-oss-request-id: 5C1B138A109F4E405B2D****
    Date: Thur, 5 Nov 2020 11:09:13 GMT

OSS SDK

次のプログラミング言語の OSS SDK を使用して、PutBucketEncryption 操作を呼び出すことができます。

ossutil

PutBucketEncryption 操作に対応する ossutil コマンドについては、「put-bucket-encryption」をご参照ください。

エラー コード

エラー コード

HTTP ステータスコード

説明

InvalidEncryptionAlgorithmError

400

SSEAlgorithm の値が KMS または AES256 でないために返されたエラー。 返されるエラー メッセージは次のとおりです: The Encryption request you specified is not valid. Supported value: AES256/KMS

InvalidArgument

400

SSEAlgorithm の値が AES256 であるにもかかわらず KMSMasterKeyID が指定されているために返されたエラー。 返されるエラー メッセージは次のとおりです: KMSMasterKeyID is not applicable if the default sse algorithm is not KMS