--- title: "PutBucketEncryption" slug: "ncloudstorage-putbucketencryption" updated: 2026-09-17T10:12:30Z published: 2026-09-17T10:12:30Z canonical: "api.ncloud-docs.com/ncloudstorage-putbucketencryption" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # PutBucketEncryption Available in Classic and VPC Register or override the default server-side encryption (SSE) settings for an Ncloud Storage bucket. If default encryption is enabled for the bucket, these settings are automatically applied during upload without the need to specify a separate encryption header. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | PUT | - | ### Request headers The following describes the request headers. Note For information about the headers common to all Ncloud Storage APIs, see [Ncloud Storage request headers](/docs/en/storage-ncloudstorage#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). | Field | Required | Description | | --- | --- | --- | | `Content-MD5` | Optional | Base64-encoded 128-bit MD5 hash of the request body - Used to verify the integrity of the request body. | | `x-amz-checksum-*` | Optional | Checksum hash value - Enter the used algorithm in `*` of the key. - Supported algorithms: `crc32` \| `crc32c` \| `sha1` \| `sha256` \| `crc64nvme` | ### Request body You can include the following data in the body of your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `ServerSideEncryptionConfiguration` | - | Required | Root elements of encryption configuration | | `ServerSideEncryptionConfiguration.Rule` | List | Required | Encryption rule list - Only 1 is allowed. | | `ServerSideEncryptionConfiguration.Rule.ApplyServerSideEncryptionByDefault` | Object | Required | Default encryption algorithm settings | | `ServerSideEncryptionConfiguration.Rule.ApplyServerSideEncryptionByDefault.SSEAlgorithm` | String | Required | Default encryption algorithm - `aws:kms` or `AES256` can be specified. - See [Behavior based on SSEAlgorithm value](/docs/en/ncloudstorage-putbucketencryption#SSEAlgorithm%EA%B0%92%EC%97%90%EB%94%B0%EB%A5%B8%EB%8F%99%EC%9E%91). | | `ServerSideEncryptionConfiguration.Rule.BucketKeyEnabled` | Boolean | Optional | Bucket key activation - This is currently not supported. If set to `true`, an error is returned. | #### Behavior based on SSEAlgorithm value The behavior based on the SSEAlgorithm value is described as follows: | SSEAlgorithm value | Description | | --- | --- | | `aws:kms` | Encrypt using Ncloud KMS (Key Management Service), and use the default key managed by Ncloud. | | `AES256` | Encrypt using the SSE-S3 method. | Note - Exactly one rule is allowed. If there are zero or two or more rules, an error is returned. - If you specify KMSMasterKeyID when setting SSEAlgorithm to AES256, an error is returned. - User-managed KMS keys (specifying KMSMasterKeyID) will be supported in the future. - `aws:kms:dsse` will be supported in the future. ### Request example The request example is as follows: #### Set SSE-KMS (Ncloud management key) The following describes a sample request for configuring default encryption based on Ncloud KMS in a bucket. Afterward, SSE-KMS is automatically applied to objects uploaded without an encryption header. ``` PUT /?encryption HTTP/1.1 Host: bucket.kr.ncloudstorage.com aws:kms ``` #### Set SSE-S3 (AES256) The following describes a sample request for configuring default encryption based on SSE-S3 in a bucket. ``` PUT /?encryption HTTP/1.1 Host: bucket.kr.ncloudstorage.com AES256 ``` ## Response This section describes the response format. ### Response headers For information about the headers common to all Ncloud Storage APIs, see [Ncloud Storage response headers](/docs/en/storage-ncloudstorage#%EC%9D%91%EB%8B%B5%ED%97%A4%EB%8D%94). ### Response status codes For information about the HTTP status codes common to all Ncloud Storage APIs, see [Common Ncloud Storage response status codes](/docs/en/storage-ncloudstorage#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` HTTP/1.1 200 OK ```