Claude Platform Docs
관리AWS KMS

Claude Platform on AWS에서 CMEK 설정

Claude Platform on AWS에서 AWS KMS 키를 고객 관리형 암호화 키로 사용하세요.

이 가이드는 Claude Platform on AWS에서 AWS KMS 키를 고객 관리형 암호화 키(customer-managed encryption key, CMEK)로 사용하는 방법을 보여줍니다. Claude Platform 또는 Claude Enterprise의 경우에는 대신 CMEK를 위한 AWS KMS 구성을 따르세요.

사전 요구 사항

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

  • 명령줄에서 키를 생성하려면 설치 및 인증된 AWS CLI.

  • Claude Platform on AWS용 Claude Console의 Admin 역할. 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 작업을 참조하세요.

Anthropic을 위한 AWS 서비스 주체

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

aws-external-anthropic.amazonaws.com

암호화 키 설정

키 정책 준비

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

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 조건을 참조하세요.

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

  • <AWS_ACCOUNT_ID>: AWS 계정 ID. AWS CLI로 출력하려면 aws sts get-caller-identity --query Account --output text를 실행하세요.
  • <COMPARTMENT_UUID>: 키를 연결할 워크스페이스의 컴파트먼트 ID

키 생성

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

  1. 키 생성 마법사 열기

    AWS KMS 콘솔을 열고 키를 생성할 리전으로 전환하세요. Customer managed keys로 이동한 다음 Create key를 클릭하세요.

  2. 키 구성(Configure key)

    다음 옵션이 선택되어 있는지 확인하세요:

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

    Next를 클릭하세요.

    대칭 키 유형, 암호화 및 복호화 키 사용, 단일 리전 키가 선택된 AWS KMS 키 생성 마법사의 키 구성(Configure key) 단계.

    대칭, 암호화 및 복호화, 단일 리전 키.
  3. 레이블 추가(Add labels)

    키의 Alias(별칭)를 입력하세요(예: anthropic-cmek). Next를 클릭하세요.

    별칭이 anthropic-cmek이고 설명이 Anthropic CMEK인 AWS KMS 레이블 추가(Add labels) 단계.

    키의 별칭.
  4. 키 관리 권한 정의(Define key administrative permissions)

    키 관리자를 선택하지 마세요. 키 정책이 이미 AWS 계정에 전체 관리자 제어 권한을 부여합니다. Next를 클릭하세요.

    키를 관리할 수 있는 IAM 역할이 나열된 AWS KMS 키 관리 권한 정의(Define key administrative permissions) 단계.

    키 관리자를 비워 두세요.
  5. 키 사용 권한 정의(Define key usage permissions)

    키 사용자를 선택하지 말고, Other AWS accounts 아래에도 아무것도 추가하지 마세요. 키 정책이 이미 필요한 액세스 권한을 부여합니다. Next를 클릭하세요.

  6. 키 정책 편집(Edit key policy)

    Edit를 클릭하세요. 준비한 키 정책으로 전체 정책을 바꾼 다음 Next를 클릭하세요.

  7. 검토(Review)

    Finish를 클릭하세요.

  8. 키 ARN 복사

    Customer managed keys에서 새 키를 열고 해당 ARN을 복사하세요. 키를 등록하려면 ARN이 필요합니다.

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

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

Anthropic에 키 등록

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

  1. 암호화 키 설정 열기

    Claude Console에서 Data retention 페이지(platform.claude.com/settings/privacy)로 이동하세요. Encryption keys가 보이지 않으면 페이지 상단의 드롭다운 메뉴에서 Organization을 선택하세요.

  2. 키 추가

    Encryption keys 아래에서 Add key를 클릭하세요. Display name을 입력하세요.

  3. 키 ARN 입력

    Anthropic은 별칭 ARN과 다중 리전 키를 거부합니다.

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

  4. 워크스페이스에 키 연결

    키 연결은 취소할 수 없습니다. 가능하면 새 워크스페이스가 요청을 받기 전에 해당 워크스페이스에 키를 연결하세요. 이미 요청을 받고 있는 워크스페이스에서는 키가 적용되기까지 최대 하루가 걸릴 수 있습니다.

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

  5. 변경 사항 확인

    CMEK 문서를 읽었음을 확인하는 체크박스를 선택한 다음 Confirm을 클릭하세요.

연결 시 키가 검증됩니다. KMS 액세스 오류로 실패하면 검증 문제 해결을 참조하세요.

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

대신 API로 키를 등록하고 연결하려면 IAM 작업을 참조하세요. API는 KMS 키 ARN으로 키를 식별합니다.

검증 문제 해결

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

  • 키 정책 불일치: 키 정책이 키 정책 준비의 정책과 일치하는지 확인하세요. 키 정책을 확인하려면 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 리소스를 사용하세요.

Was this page helpful?