Überblick
Enterprise Key Management (EKM) ermöglicht es dir, deine Kundendaten bei OpenAI mit Schlüsseln zu verschlüsseln, die von deinem eigenen externen Key Management System (KMS) verwaltet werden, und ist sowohl für ChatGPT Enterprise als auch für die API verfügbar.
OpenAI unterstützt Bring-Your-Own-Key- (BYOK) Verschlüsselung mit externen Konten in AWS KMS, Google Cloud (GCP) und Azure Key Vault.
Derzeit ist die EKM-Implementierung auf Enterprise- und Edu-Workspaces mit einem/einer festen Ansprechpartner:in bei OpenAI beschränkt.
Wie die OpenAI-EKM-Verschlüsselung funktioniert
Top-Level-Ablauf
Wir generieren einen Data Encryption Key (DEK) für deinen Cloud-Anbieter.
Dein Cloud-KMS verwaltet einen primären Key Encryption Key (KEK), der entweder in deiner Cloud oder extern gespeichert ist. Die Implementierung liegt bei dir.
Wir fordern eine Verschlüsselung des DEK aus deiner Cloud an, um einen verschlüsselten DEK (eDEK) zu erhalten. Wenn dein KEK extern gespeichert ist, führt deine Cloud lediglich einen zusätzlichen Sprung zu deinem externen Speicher aus – in einem Schritt, der für OpenAI nicht einsehbar ist.
Verschlüsselung
Bei der Verschlüsselung werden deine Daten mit dem DEK verschlüsselt, und der eDEK wird als Metadaten in der Datei gespeichert.

Entschlüsselung
Bei der Entschlüsselung fordern wir dein Cloud-KMS auf, den eDEK in den DEK zu entschlüsseln, und entschlüsseln die Daten mit dem DEK.

Wichtige Begriffe
Data Encryption Key (DEK) – der Schlüssel, mit dem deine Daten verschlüsselt werden.
Encrypted Data Encryption Key (eDEK) – der verschlüsselte DEK, der von deinem KMS generiert wurde.
Key Encryption Key (KEK) – der Hauptschlüssel, den du verwaltest und der den DEK in eDEK verschlüsselt sowie eDEK in DEK entschlüsselt. Dieser Schlüssel bleibt immer außerhalb der OpenAI-Systeme.
Übergeordnete Anforderungen für die Implementierung
Bei deinem Cloud-Anbieter
Erstelle einen neuen Schlüssel in deinem Cloud-KMS (Azure, AWS oder GCP)
Eine benutzerdefinierte, eingeschränkte Richtlinie mit Berechtigungen zum Verschlüsseln und Entschlüsseln im KMS wurde erstellt
Erstelle eine Vertrauensrichtlinie (AWS), eine Workload-Identität (GCP) oder einen Service Principal (für Azure) für OpenAI
Weise OpenAI eine Rolle mit der eingeschränkten Richtlinie für den Zugriff auf dein KMS zu
Auf OpenAI-Plattformen
ChatGPT Enterprise
Erstelle einen Sandbox-ChatGPT-Workspace zu Testzwecken.
API
Erstelle in deinem OpenAI-Dashboard ein neues Projekt, in dem die Verschlüsselung angewendet wird.
Anbieterspezifische Funktionen
Für AWS wird OpenAI:
AssumeRole mit einer Externen ID aufrufen
Für GCP wird OpenAI:
Deinen STS-Endpunkt von einem OpenAI-GCP-Konto aus aufrufen
Verwende das GCP-Zugriffs-Token, um Verschlüsseln/Entschlüsseln auf deinem KMS aufzurufen.
Für Azure wird OpenAI:
Ein Zugriffs-Token für den Vault deines Azure Principal anfordern
Verwende dieses Zugriffs-Token zum Aufrufen von Verschlüsseln/Entschlüsseln für deinen Key Vault.
Informationen, die du von OpenAI benötigst
Authentifizierung
Du musst die föderierten Identitäts-Token von OpenAI für AWS und GCP erkennen. Für Azure musst du die Anwendungs-ID von OpenAI für dessen App-Registrierung erkennen.
Zusammenfassung der Authentifizierungsparameter
| OpenAI AWS Principal | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| OpenAI-GCP-Dienstkonto-ID | 105900137572174660365 |
| OpenAI-Azure-Anwendungs-ID | 20a14814-5ab7-4612-a671-1382b412bf93 |
Erforderliche Informationen während der Implementierung basierend auf deinem Cloud-Anbieter
Für AWS musst du eine Vertrauensrichtlinie einrichten, die Folgendes erkennt:
OpenAIs Principal (Kontonummer + Rolle)
Eine Externe ID, die deine OpenAI-Projekt-ID ist
Für GCP musst du eine Workload-Identität einrichten, die Folgendes erkennt:
OpenAIs Dienstkonto-ID
Eine Zielgruppe, die deine OpenAI-Projekt-ID ist
Für Azure musst du in deinem Azure-Tenant einen Service Principal für die App-Registrierung von OpenAI erstellen
Erstelle eine für OpenAIs Client-ID der Anwendung: 20a14814-5ab7-4612-a671-1382b412bf9
Du kannst dies tun, indem du einen Post an den Endpunkt https://graph.microsoft.com/v1.0/servicePrincipals sendest.
Autorisierung
Du musst eine Richtlinie erstellen, die es der Identität von OpenAI ermöglicht, eingeschränkten Zugriff auf dein KMS zu erhalten.
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
Sonstiges
Wähle in Azure für den Schlüsseltyp (Schlüsselverschlüsselungsalgorithmus) RSA und nicht EC aus.
Informationen, die OpenAI von dir benötigt
Befolge die Anweisungen in diesem Dokument, um dein KMS bei OpenAI zu registrieren. Hier ist eine Zusammenfassung der Parameter, die du angeben musst.
Authentifizierungsbezogen
AWS
IAM-Rollen-ARN – Rolle, die OpenAI übernehmen soll (Beispiel: arn:aws:iam::123456789:rolle/rollenbezeichnung)
Externe ID – deine OpenAI-Organisations-ID
GCP
Projektnummer der Workload-Identität (Beispiel: 123456789)
Workload-Identitätspool-ID
Workload-Identitätsanbieter-ID
Zulässige Zielgruppe: deine OpenAI-Organisations-ID
Azure
Tenant-ID
| AWS | GCP | Azure | |
| Authentifizierungsbezogen | Tenant-ID | ||
| KMS-bezogen | KMS ARN – (Beispiel: arn:aws:kms:REGION:KONTONUMMER:key:SCHLÜSSEL_UUID) | KMS-Projekt-ID (Beispiel: Adjektiv-Substantiv-12345)KMS-SchlüsselringnameKMS-SchlüsselnameKMS-Schlüsselstandort (Beispiel: us-ost1) | Vault-URI (Beispiel: https://name-deines-vault.vault.azure.net/)Schlüsselname |
Nachdem du dein KMS bei OpenAI registriert hast, folge weiterhin den Anweisungen in der Dokumentation, um deine EKM-Konfiguration in einem API-Projekt zu aktivieren. Erstelle zu Testzwecken ein neues OpenAI-API-Projekt.
Anbieterspezifische Implementierungsleitfäden
Sieh dir für Schritt-für-Schritt-Anleitungen die entsprechenden Links unten an. Bitte beachte, dass sich diese auf die Integrationsanforderungen für OpenAI konzentrieren und nicht als umfassender Leitfaden für deine gesamte Umgebung gedacht sind.
Nicht unterstützte Funktionen bei aktiviertem EKM
In dieser ersten Version sind die folgenden Funktionen nicht verfügbar, wenn EKM aktiviert ist:
Apps mit Synchronisierung
Funktionen, die nicht allgemein verfügbar sind (d. h. alles, was sich noch in der Alpha-/Beta-Phase befindet)
