---
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
```