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

Object Storage Service:PutBucketEncryption

最終更新日:Feb 21, 2024

この操作では、バケットの暗号化ルールを設定できます。

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

リクエストの構造

PUT /? 暗号化HTTP/1.1
日付: GMT日付
Content-Length: ContentLength
Content-Type: application/xml
ホスト: BucketName.oss.aliyuncs.com
権限付与: SignatureValue
<? xml version="1.0" encoding="UTF-8"? >
<ServerSideEncryptionRule>
  <ApplyServerSideEncryptionByDefault>
    <SSEAlgorithm>AES256</SSEAlgorithm>
    <KMSMasterKeyID></KMSMasterKeyID>
  </ApplyServerSideEncryptionByDefault>
</ServerSideEncryptionRule> 

リクエスト要素

要素データ型必須説明
ServerSideEncryptionRuleContainer必須サーバー側の暗号化ルールを格納するコンテナー。

子ノード: ApplyServerSideEncryptionByDefault

ApplyServerSideEncryptionByDefaultContainer必須既定のサーバー側暗号化方式を格納するコンテナー。

子ノード: SSEAlgorithmおよびKMSMasterKeyID

SSEAlgorithmString必須デフォルトのサーバー側暗号化方法。

有効な値: KMS、AES256.

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

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

  • ソースバケット内のオブジェクトが暗号化されていない場合、複製後に宛先バケットの既定の暗号化方法を使用して暗号化されます。
  • ソースバケット内のオブジェクトがSSE-KMSまたはSSE-OSSを使用して暗号化されている場合、複製後に同じ方法で暗号化されます。

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

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

有効値: SM4。

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

  • リクエストの例
    • 暗号化方法をSSE-KMSに設定する

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

      PUT /? 暗号化HTTP/1.1
      日付: 11月5日木曜日11:09:13 GMT 2020
      Content-Length: ContentLength
      Content-Type: application/xml
      ホスト: oss-example.oss-cn-hangzhou.aliyuncs.com
      権限付与: OSS qn6qrrqxo2oawuk53otf ****:ceOEyZavKY4QcjoUWYSpYbJ3 ****
      <? 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 ****
    日付: 11月5日木曜日11:09:13 GMT 
    2020

SDK

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

エラーコード

エラーコードHTTPステータスコード説明
InvalidEncryptionAlgorithmError400SSEAlgorithmの値がKMSまたはAES256でない場合に返されるエラー。 次のエラーメッセージが返されます。指定した暗号化要求は無効です。 サポートされている値: AES256/KMS
InvalidArgument400SSEAlgorithmの値がAES256であるが、KMSMasterKeyIDが指定されている場合に返されるエラー。 次のエラーメッセージが返されます。デフォルトのsseアルゴリズムがKMSでない場合、KMSMasterKeyIDは適用されません