---
title: Claude Platform on AWS에서 CMEK 설정
url: https://platform.claude.com/docs/ko/manage-claude/cmek-claude-platform-on-aws
description: Claude Platform on AWS에서 AWS KMS 키를 고객 관리형 암호화 키로 사용하세요.
---

이 가이드는 [Claude Platform on AWS](https://platform.claude.com/docs/ko/build-with-claude/claude-platform-on-aws)에서 [AWS KMS](https://aws.amazon.com/kms/) 키를 [고객 관리형 암호화 키(customer-managed encryption key, CMEK)](https://platform.claude.com/docs/ko/manage-claude/cmek)로 사용하는 방법을 보여줍니다. Claude Platform 또는 Claude Enterprise의 경우에는 대신 [CMEK를 위한 AWS KMS 구성](https://platform.claude.com/docs/ko/manage-claude/cmek-aws-kms)을 따르세요.

<Warning>
  CMEK 활성화는 영구적입니다. KMS 키가 삭제되거나 비활성화되면 Anthropic은 해당 키로 암호화된 데이터를 복구할 수 없습니다. 시작하기 전에 [경고 및 제한 사항](https://platform.claude.com/docs/ko/manage-claude/cmek)을 검토하세요.
</Warning>

## 사전 요구 사항

* KMS 키를 생성하고 키 정책을 설정할 수 있는 권한(`kms:CreateKey` 및 `kms:PutKeyPolicy`)이 있는, Claude Platform on AWS 조직을 호스팅하는 AWS 계정.

* 명령줄에서 키를 생성하려면 설치 및 인증된 [AWS CLI](https://aws.amazon.com/cli/).

* Claude Platform on AWS용 Claude Console의 **Admin** 역할. [Claude Console 사용하기](https://platform.claude.com/docs/ko/build-with-claude/claude-platform-on-aws#using-the-claude-console)를 참조하세요.

* Claude Console에 로그인할 때 사용하는 IAM 주체에 대한 다음 권한:

  * **로그인:** `aws-external-anthropic:AssumeConsole`
  * **키 등록:** `aws-external-anthropic:RegisterKey`
  * **등록된 키 보기:** `aws-external-anthropic:ListKeys` 및 `aws-external-anthropic:GetKey`
  * **키 연결:** `aws-external-anthropic:UpdateWorkspace` 또는 `aws-external-anthropic:CreateWorkspace`, 그리고 키에 대한 `kms:DescribeKey`, `kms:Encrypt`, `kms:Decrypt`
  * **목록에서 키 선택(선택 사항):** `kms:ListKeys` 및 `kms:DescribeKey`

  `aws-external-anthropic:RegisterKey`, `aws-external-anthropic:ListKeys`, `aws-external-anthropic:GetKey`, `aws-external-anthropic:CreateWorkspace`는 계정 범위 권한입니다. `Resource: "*"`에 대해 부여하세요. [IAM 작업](https://platform.claude.com/docs/ko/api/claude-platform-on-aws-iam-actions#encryption-keys)을 참조하세요.

## Anthropic을 위한 AWS 서비스 주체

이 가이드의 키 정책은 다음 AWS 서비스 주체에 키에 대한 액세스 권한을 부여합니다:

```text wrap
aws-external-anthropic.amazonaws.com
```

<Warning>
  이 게시된 서비스 주체 이름만 사용하세요. 이메일, 채팅 또는 온보딩 채널을 통해 제공된 식별자는 절대 신뢰하지 마세요.
</Warning>

## 암호화 키 설정

### 키 정책 준비

이 정책을 텍스트 편집기에 복사하세요:

```json key-policy.json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AccountRootAdmin",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::<AWS_ACCOUNT_ID>:root"
      },
      "Action": "kms:*",
      "Resource": "*"
    },
    {
      "Sid": "AllowClaudePlatformOnAWSCrypto",
      "Effect": "Allow",
      "Principal": {
        "Service": "aws-external-anthropic.amazonaws.com"
      },
      "Action": ["kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey"],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "kms:EncryptionContext:anthropic:compartment_uuid": ["<COMPARTMENT_UUID>"]
        }
      }
    },
    {
      "Sid": "AllowClaudePlatformOnAWSDescribe",
      "Effect": "Allow",
      "Principal": {
        "Service": "aws-external-anthropic.amazonaws.com"
      },
      "Action": "kms:DescribeKey",
      "Resource": "*"
    }
  ]
}
```

`EncryptionContext` 조건은 선택 사항입니다. 이 조건은 나열한 워크스페이스로 키를 제한합니다. 이를 제거하려면 `AllowClaudePlatformOnAWSCrypto` 명령문에서 `Condition` 블록을 삭제하세요.

조건을 유지하는 경우, 키를 워크스페이스에 연결하기 전에 각 워크스페이스의 컴파트먼트 ID를 추가하세요. 새 워크스페이스의 경우:

1. 키 없이 워크스페이스를 생성하세요.
2. 해당 컴파트먼트 ID를 정책에 추가하세요.
3. 키를 연결하세요.

나중에 조건을 추가하는 경우, 키가 이미 연결된 모든 워크스페이스의 컴파트먼트 ID를 나열하세요.

키 정책을 더 제한하려면 [선택적 `aws:SourceArn` 조건](https://platform.claude.com/docs/ko/manage-claude/cmek-claude-platform-on-aws#source-arn-condition)을 참조하세요.

플레이스홀더를 바꾸세요:

* **`<AWS_ACCOUNT_ID>`:** [AWS 계정 ID](https://docs.aws.amazon.com/IAM/latest/UserGuide/console-account-id.html). AWS CLI로 출력하려면 `aws sts get-caller-identity --query Account --output text`를 실행하세요.
* **`<COMPARTMENT_UUID>`:** 키를 연결할 워크스페이스의 컴파트먼트 ID

<Note>
  **컴파트먼트 ID 찾기:** Claude Console에서 [Data retention](https://platform.claude.com/settings/privacy) 페이지(`platform.claude.com/settings/privacy`)로 이동하세요. 페이지 상단의 드롭다운 메뉴에서 워크스페이스를 선택하세요. ID는 **Encryption key** 아래의 **Compartment ID** 필드에 있습니다. [Get Workspace](https://platform.claude.com/docs/ko/api/organization/workspaces/retrieve) 엔드포인트가 반환하는 `compartment_id` 필드를 읽을 수도 있습니다.
</Note>

### 키 생성

Claude Platform on AWS 조직을 호스팅하는 AWS 계정에서, 워크스페이스와 동일한 리전에 키를 생성하세요.

<Tabs>
  <Tab title="AWS Console">
    <Steps>
      <Step title="키 생성 마법사 열기">
        [AWS KMS 콘솔](https://console.aws.amazon.com/kms)을 열고 키를 생성할 리전으로 전환하세요. **Customer managed keys**로 이동한 다음 **Create key**를 클릭하세요.
      </Step>

      <Step title="키 구성(Configure key)">
        다음 옵션이 선택되어 있는지 확인하세요:

        * **Key type:** Symmetric
        * **Key usage:** Encrypt and decrypt
        * **Advanced options > Key material origin:** KMS
        * **Advanced options > Regionality:** Single-Region key

        **Next**를 클릭하세요.

        <Frame caption="대칭, 암호화 및 복호화, 단일 리전 키.">
          ![대칭 키 유형, 암호화 및 복호화 키 사용, 단일 리전 키가 선택된 AWS KMS 키 생성 마법사의 키 구성(Configure key) 단계.](https://platform.claude.com/docs/images/cmek/aws-configure-key.png)
        </Frame>
      </Step>

      <Step title="레이블 추가(Add labels)">
        키의 **Alias**(별칭)를 입력하세요(예: `anthropic-cmek`). **Next**를 클릭하세요.

        <Frame caption="키의 별칭.">
          ![별칭이 anthropic-cmek이고 설명이 Anthropic CMEK인 AWS KMS 레이블 추가(Add labels) 단계.](https://platform.claude.com/docs/images/cmek/aws-add-labels.png)
        </Frame>
      </Step>

      <Step title="키 관리 권한 정의(Define key administrative permissions)">
        키 관리자를 선택하지 마세요. 키 정책이 이미 AWS 계정에 전체 관리자 제어 권한을 부여합니다. **Next**를 클릭하세요.

        <Frame caption="키 관리자를 비워 두세요.">
          ![키를 관리할 수 있는 IAM 역할이 나열된 AWS KMS 키 관리 권한 정의(Define key administrative permissions) 단계.](https://platform.claude.com/docs/images/cmek/aws-admin-permissions.png)
        </Frame>
      </Step>

      <Step title="키 사용 권한 정의(Define key usage permissions)">
        키 사용자를 선택하지 말고, **Other AWS accounts** 아래에도 아무것도 추가하지 마세요. 키 정책이 이미 필요한 액세스 권한을 부여합니다. **Next**를 클릭하세요.
      </Step>

      <Step title="키 정책 편집(Edit key policy)">
        **Edit**를 클릭하세요. 준비한 키 정책으로 전체 정책을 바꾼 다음 **Next**를 클릭하세요.
      </Step>

      <Step title="검토(Review)">
        **Finish**를 클릭하세요.
      </Step>

      <Step title="키 ARN 복사">
        **Customer managed keys**에서 새 키를 열고 해당 ARN을 복사하세요. 키를 등록하려면 ARN이 필요합니다.
      </Step>
    </Steps>

    이미 존재하는 키의 키 정책을 바꾸려면:

    1. 키를 열고 **Key policy** 탭을 클릭하세요.
    2. **Switch to policy view**가 보이면 클릭하세요.
    3. **Edit**를 클릭하세요.
    4. 준비한 키 정책으로 JSON을 바꾸세요.
    5. **Save changes**를 클릭하세요.
  </Tab>

  <Tab title="AWS CLI">
    키 정책을 `key-policy.json`으로 저장한 다음 키를 생성하세요. `<REGION>`을 키의 리전으로 바꾸세요.

    ```bash
    aws kms create-key \
      --region <REGION> \
      --description "Anthropic CMEK" \
      --key-usage ENCRYPT_DECRYPT \
      --policy file://key-policy.json
    ```

    출력에서 `KeyMetadata.Arn`을 복사하세요. 키를 등록하려면 이 값이 필요합니다.
  </Tab>
</Tabs>

<Note>
  **선택 사항:** 두 서비스 주체 명령문을 더 제한하려면 각각에 `aws:SourceArn` 조건을 추가하세요. 모든 호출의 소스 ARN은 `arn:aws:aws-external-anthropic:<REGION>:<AWS_ACCOUNT_ID>:workspace/<WORKSPACE_ID>` 형식의 [워크스페이스 ARN](https://platform.claude.com/docs/ko/api/claude-platform-on-aws-iam-actions#service-details)입니다.

  * **AWS 계정의 모든 워크스페이스:** `"ArnLike": {"aws:SourceArn": "arn:aws:aws-external-anthropic:*:<AWS_ACCOUNT_ID>:workspace/*"}`
  * **특정 워크스페이스:** 동일한 조건에서 와일드카드 대신 전체 워크스페이스 ARN 목록을 사용
</Note>

## Anthropic에 키 등록

Admin 역할로 AWS를 통해 Claude Console에 로그인하세요.

<Steps>
  <Step title="암호화 키 설정 열기">
    Claude Console에서 [Data retention](https://platform.claude.com/settings/privacy#encryption-keys) 페이지(`platform.claude.com/settings/privacy`)로 이동하세요. **Encryption keys**가 보이지 않으면 페이지 상단의 드롭다운 메뉴에서 **Organization**을 선택하세요.
  </Step>

  <Step title="키 추가">
    **Encryption keys** 아래에서 **Add key**를 클릭하세요. **Display name**을 입력하세요.
  </Step>

  <Step title="키 ARN 입력">
    Anthropic은 별칭 ARN과 다중 리전 키를 거부합니다.

    **KMS key ARN**에 키 ARN을 붙여넣으세요. 대신 키 목록이 나타나면 키를 선택하거나, **Enter ARN manually**를 클릭하고 ARN을 붙여넣으세요. **Add**를 클릭하세요.
  </Step>

  <Step title="워크스페이스에 키 연결">
    키 연결은 취소할 수 없습니다. 가능하면 새 워크스페이스가 요청을 받기 전에 해당 워크스페이스에 키를 연결하세요. 이미 요청을 받고 있는 워크스페이스에서는 키가 [적용되기까지 최대 하루](https://platform.claude.com/docs/ko/manage-claude/cmek#how-it-works)가 걸릴 수 있습니다.

    Data retention 페이지 상단의 드롭다운 메뉴에서 워크스페이스를 선택하세요. **Encryption key** 아래에서 키를 선택하고 **Save**를 클릭하세요.
  </Step>

  <Step title="변경 사항 확인">
    CMEK 문서를 읽었음을 확인하는 체크박스를 선택한 다음 **Confirm**을 클릭하세요.
  </Step>
</Steps>

연결 시 키가 검증됩니다. KMS 액세스 오류로 실패하면 [검증 문제 해결](https://platform.claude.com/docs/ko/manage-claude/cmek-claude-platform-on-aws#troubleshoot-validation)을 참조하세요.

키 정책에 `EncryptionContext` 조건이 없는 경우, Claude Console에서 워크스페이스를 생성할 때 키를 선택할 수도 있습니다.

대신 API로 키를 등록하고 연결하려면 [IAM 작업](https://platform.claude.com/docs/ko/api/claude-platform-on-aws-iam-actions#encryption-keys)을 참조하세요. API는 KMS 키 ARN으로 키를 식별합니다.

## 검증 문제 해결

검증이 실패하는 경우 일반적인 원인은 다음과 같습니다:

* **키 정책 불일치:** 키 정책이 [키 정책 준비](https://platform.claude.com/docs/ko/manage-claude/cmek-claude-platform-on-aws#prepare-the-key-policy)의 정책과 일치하는지 확인하세요. 키 정책을 확인하려면 `aws kms get-key-policy --region <REGION> --key-id <KEY_ARN> --policy-name default`를 실행하세요.
* **조건 불일치:** `EncryptionContext` 또는 `aws:SourceArn` 조건에 이 워크스페이스가 포함되어 있는지 확인하세요.
* **키 상태 또는 위치:** 키가 활성화되어 있고, 단일 리전 키이며, 워크스페이스와 동일한 AWS 계정 및 리전에 있는지 확인하세요.
* **권한 누락:** 로그인한 주체에 키에 대한 `kms:DescribeKey`, `kms:Encrypt`, `kms:Decrypt` 권한이 필요합니다.
* **조직 정책:** AWS 조직의 서비스 제어 정책이나 리소스 제어 정책이 서비스 주체 또는 사용자의 주체를 차단하지 않는지 확인하세요.

그래도 연결이 실패하면 키가 있는 계정의 CloudTrail에서 거부된 `kms:` 이벤트를 찾으세요. 이 이벤트는 호출한 주체와, 암호화 호출의 경우 암호화 컨텍스트를 보여줍니다. 원인을 해결한 후 **Save**를 다시 클릭하세요.

## Terraform

Terraform으로 키를 생성하려면 `aws` 공급자의 `aws_kms_key` 및 `aws_kms_alias` 리소스를 사용하세요.
