• Nachrichten
  • Managed Agents
  • Admin
Search...
⌘K
Organisation
Admin APIWorkspaces
Authentifizierung
ÜbersichtWorkload Identity FederationWIF-Referenz
Monitoring
Usage and Cost APIRate Limits APIClaude Code Analytics API
Daten & Compliance
DatenresidenzAPI und Datenaufbewahrung
ÜbersichtAWS KMSGoogle Cloud KMSAzure Key Vault
Compliance API
ÜbersichtZugriff erhaltenAktivitäts-FeedChats, Dateien und ProjekteOrganisationen, Benutzer, Rollen und GruppenIntegration entwerfenFehlerFAQ
Log in
AWS KMS
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Admin/Verschlüsselungsschlüssel

AWS KMS für CMEK konfigurieren

Verwende AWS KMS, um einen Verschlüsselungsschlüssel für deine Organisation bereitzustellen.
Configure with the /claude-api skill in Claude Code
claude "/claude-api help me configure a customer-managed encryption key with AWS KMS"

Diese Anleitung führt dich durch die Konfiguration eines AWS KMS-Schlüssels als „customer-managed encryption key" (kundenverwalteter Verschlüsselungsschlüssel), oder CMEK, für deine Anthropic-Organisation.

Die Aktivierung von CMEK ist dauerhaft. Wenn dein KMS-Schlüssel gelöscht oder deaktiviert wird, kann Anthropic die damit verschlüsselten Daten nicht wiederherstellen. Lies die Warnungen und Einschränkungen, bevor du beginnst.

Voraussetzungen

  • Ein AWS-Konto mit Berechtigungen zum Erstellen von KMS-Schlüsseln und zum Festlegen von Key-Policies (kms:CreateKey und kms:PutKeyPolicy).
  • Ein Anthropic Admin-API-Key für deine Organisation.
  • Die AWS CLI, installiert und authentifiziert.

Amazon Resource Name (ARN) für Anthropic

Damit Anthropic deinen Verschlüsselungsschlüssel verwenden kann, musst du der IAM-Rolle von Anthropic einen KMS-Schlüssel zur Verfügung stellen, den sie zum Verschlüsseln von Daten nutzen kann. Der ARN für Anthropic CMEK lautet:

arn:aws:iam::915198916910:role/anthropic-cmek-client-us

Verwende ausschließlich diesen veröffentlichten ARN. Vertraue niemals einem Identifier, der per E-Mail, Chat oder über einen Onboarding-Kanal bereitgestellt wird.

Einrichtung des Verschlüsselungsschlüssels

  1. 1

    Erstelle den KMS-Schlüssel mit einer kontoübergreifenden Key-Policy

    Die Key-Policy gewährt der IAM-Rolle von Anthropic kontoübergreifenden Zugriff. Drei Statements sind erforderlich:

    1. Account-Root-Admin: das Standard-KMS-Muster. Dein Konto behält die volle administrative Kontrolle.
    2. Anthropic Encrypt und Decrypt: die Aktionen kms:Encrypt und kms:Decrypt, die Anthropic verwendet, um die Datenschlüssel zu ver- und entschlüsseln, die deine Workspace-Daten schützen (Envelope-Verschlüsselung).
    3. Anthropic Describe: der Metadaten-Lesezugriff, den Anthropic beim Start durchführt. Er wird separat gewährt, weil DescribeKey keinen EncryptionContext-Parameter hat – eine EncryptionContext-Bedingung für diese Aktion würde daher immer verweigern.
    export YOUR_ACCOUNT=$(aws sts get-caller-identity --query Account --output text)
    
    aws kms create-key \
      --region <region> \
      --description "Anthropic CMEK" \
      --key-usage ENCRYPT_DECRYPT \
      --policy "{
        \"Version\": \"2012-10-17\",
        \"Statement\": [
          {
            \"Sid\": \"AccountRootAdmin\",
            \"Effect\": \"Allow\",
            \"Principal\": {\"AWS\": \"arn:aws:iam::${YOUR_ACCOUNT}:root\"},
            \"Action\": \"kms:*\",
            \"Resource\": \"*\"
          },
          {
            \"Sid\": \"AllowAnthropicCMEKCrypto\",
            \"Effect\": \"Allow\",
            \"Principal\": {\"AWS\": \"arn:aws:iam::915198916910:role/anthropic-cmek-client-us\"},
            \"Action\": [\"kms:Encrypt\", \"kms:Decrypt\"],
            \"Resource\": \"*\",
            \"Condition\": {
              \"StringEquals\": {
                \"kms:EncryptionContext:anthropic:compartment_uuid\": \"<compartment-uuid>\"
              }
            }
          },
          {
            \"Sid\": \"AllowAnthropicCMEKDescribe\",
            \"Effect\": \"Allow\",
            \"Principal\": {\"AWS\": \"arn:aws:iam::915198916910:role/anthropic-cmek-client-us\"},
            \"Action\": \"kms:DescribeKey\",
            \"Resource\": \"*\"
          }
        ]
      }"

    Notiere dir KeyMetadata.Arn aus der Ausgabe. Du benötigst ihn, wenn du den Schlüssel im nächsten Schritt registrierst.

    Die EncryptionContext-Bedingung wird empfohlen, ist aber optional. Anthropic fügt die Compartment-ID deines Workspaces immer in den Encryption-Context ein, sodass der Ciphertext unabhängig davon kryptografisch an dieses Compartment gebunden ist. Das Hinzufügen der Bedingung bietet Defense-in-Depth auf der IAM-Ebene. Um ohne sie zu starten, lass den Condition-Block im AllowAnthropicCMEKCrypto-Statement weg und füge ihn später mit kms:PutKeyPolicy hinzu.

    So findest du deine Compartment-ID: Jeder Workspace hat eine Compartment-ID, die den Geltungsbereich seiner CMEK-Daten festlegt. Du findest sie in der Claude Console unter Workspace > Security > Encryption keys (das Feld Compartment ID) oder im Feld compartment_id, das vom Endpunkt Get Workspace zurückgegeben wird. Setze diesen Wert für <compartment-uuid> in der obigen Key-Policy ein. Anthropic sendet ihn auch als Encryption-Context bei der Validierung des Schlüssels, daher muss der Bedingungswert übereinstimmen, damit die Validierung erfolgreich ist.

    Du kannst den Schlüssel auch über die AWS Console erstellen. Wähle einen symmetrischen Schlüssel mit der Schlüsselverwendung „Encrypt and decrypt", einen Single-Region-Schlüssel und KMS als Ursprung des Schlüsselmaterials. Der Create-Key-Assistent legt im Schritt Review eine Key-Policy fest: Wenn du dort die Anthropic-Konto-ID 915198916910 unter den Key-Usage-Permissions hinzufügst, gewährt die generierte Policy dem gesamten Anthropic-Konto umfassendere Aktionen (wie kms:ReEncrypt* und kms:GenerateDataKey*) ohne EncryptionContext-Bedingung, und die Validierung würde trotzdem erfolgreich sein. Um keinen zu weit gefassten Schlüssel zu hinterlassen, schließe den Assistenten nur mit administrativen Berechtigungen ab, öffne dann den Tab Key policy des Schlüssels und ersetze das JSON durch die oben gezeigte rollenbezogene Policy (die drei Statements, die auf die Rolle anthropic-cmek-client-us beschränkt sind, mit der EncryptionContext-Bedingung).

    AWS KMS Create-Key-Assistent im Schritt Configure key, mit ausgewähltem Schlüsseltyp Symmetric, Schlüsselverwendung Encrypt and decrypt und Single-Region key.
    Configure key (Schlüssel konfigurieren): symmetrisch, Encrypt and decrypt, Single-Region-Schlüssel.
    AWS KMS Schritt Add labels mit dem Alias anthropic-cmek und der Beschreibung Anthropic CMEK.
    Add labels (Bezeichnungen hinzufügen): Füge einen Alias und eine Beschreibung für den Schlüssel hinzu.
    AWS KMS Schritt Define key administrative permissions mit einer Liste von IAM-Rollen, die den Schlüssel verwalten können.
    Define key administrative permissions (Administrative Schlüsselberechtigungen definieren, optional). Dein Konto behält die volle administrative Kontrolle.
    AWS KMS Schritt Define key usage permissions als Anti-Pattern dargestellt: Das Hinzufügen der Anthropic-Konto-ID 915198916910 unter Other AWS accounts führt hier zu einer zu weit gefassten Policy. Überspringe diesen Schritt und lass ihn leer.
    Define key usage permissions (Schlüsselverwendungsberechtigungen definieren): Füge hier nicht die Konto-ID von Anthropic hinzu. Dieser Schritt des Assistenten erzeugt eine zu weit gefasste Policy. Lass die Verwendungsberechtigungen leer und bearbeite das Key-Policy-JSON nach der Erstellung (siehe oben).
  2. 2

    Registriere den Schlüssel bei Anthropic

    Erstelle eine externe Schlüsselkonfiguration über die Admin-API.

    curl -sS https://api.anthropic.com/v1/organizations/external_keys \
      -H "x-api-key: <anthropic-admin-api-key>" \
      -H "anthropic-version: 2023-06-01" \
      -H "content-type: application/json" \
      -d '{
        "display_name": "<friendly-name>",
        "geo": "us",
        "provider_config": {
          "type": "aws",
          "kms_arn": "<key-arn-from-step-1>",
          "role_arn": "arn:aws:iam::915198916910:role/anthropic-cmek-client-us"
        }
      }'

    Die Antwort enthält die externe Schlüssel-ID:

  3. 3

    Validiere den Schlüssel

    Löse einen Encrypt-und-Decrypt-Roundtrip gegen deinen Schlüssel aus.

    curl -sS -X POST https://api.anthropic.com/v1/organizations/external_keys/ekey_<id>/validate \
      -H "x-api-key: <anthropic-admin-api-key>" \
      -H "anthropic-version: 2023-06-01" \
      -H "content-type: application/json" -d '{}'

    Eine erfolgreiche Antwort sieht so aus:

    { "type": "external_key_validation", "status": "success", "error": null }
  4. 4

    Verknüpfe den Schlüssel mit einem Workspace

    curl -sS -X POST https://api.anthropic.com/v1/organizations/workspaces/<workspace-id> \
      -H "x-api-key: <anthropic-admin-api-key>" \
      -H "anthropic-version: 2023-06-01" \
      -H "content-type: application/json" \
      -d '{
        "external_key_id": "ekey_<id>"
      }'

Terraform

Für Infrastructure-as-Code-Deployments lassen sich dieselben Schritte mit dem aws-Provider und den Ressourcen aws_kms_key und aws_kms_alias abbilden.

Was this page helpful?

  • Voraussetzungen
  • Amazon Resource Name (ARN) für Anthropic
  • Einrichtung des Verschlüsselungsschlüssels
  • Terraform
{
  "type": "external_key",
  "id": "ekey_<id>",
  "display_name": "<friendly-name>"
}

Wenn die Validierung fehlschlägt, sind häufige Ursachen:

  • Encryption-Context-Mismatch: Wenn du die EncryptionContext-Bedingung in der Key-Policy beibehalten hast, überprüfe, ob du <compartment-uuid> durch die tatsächliche Compartment-ID deines Workspaces ersetzt hast (siehe Schritt 1). Ein falscher oder nicht ersetzter Wert führt dazu, dass KMS eine nicht aussagekräftige AccessDeniedException zurückgibt. Um dies auszuschließen, entferne vorübergehend den Condition-Block aus dem AllowAnthropicCMEKCrypto-Statement und validiere erneut.
  • Resource Control Policies (RCPs): Wenn deine AWS-Organisation eine RCP hat, die KMS-Operationen verweigert, wenn aws:PrincipalOrgID nicht mit deiner Organisation übereinstimmt, blockiert sie die kontoübergreifende Rolle von Anthropic. Die RCP benötigt eine Ausnahme für diesen Schlüssel oder für den Rollen-ARN von Anthropic. Service Control Policies greifen hier nicht, da sie für externe Principals, die über ressourcenbasierte Policies zugreifen, nicht ausgewertet werden.
  • Zugriff über IAM statt über die Key-Policy gewährt: Kontoübergreifender KMS-Zugriff muss in der Key-Policy selbst gewährt werden, nicht über eine IAM-Policy in deinem Konto. Überprüfe dies mit aws kms get-key-policy --key-id <id> --policy-name default.
  • Region-Mismatch: Überprüfe, ob die Region des Schlüssels eine ist, in der Anthropic für die von dir konfigurierte Geo-Stufe operiert.