Přehled
Enterprise Key Management (EKM) vám umožňuje šifrovat váš zákaznický obsah v OpenAI pomocí klíčů spravovaných vaším vlastním externím systémem správy klíčů (KMS), který je k dispozici jak pro ChatGPT Enterprise, tak pro API.
OpenAI podporuje šifrování Bring Your Own Key (BYOK) s externími účty v AWS KMS, Google Cloud (GCP) a Azure Key Vault.
V současnosti je implementace EKM omezena na pracovní prostory Enterprise a Edu s přiděleným zástupcem účtu OpenAI.
Jak funguje šifrování OpenAI EKM
Tok na nejvyšší úrovni
Vygenerujeme Data Encryption Key (DEK) pro vašeho cloudového poskytovatele.
Váš cloudový KMS spravuje hlavní Key Encryption Key (KEK), který je uložen buď ve vašem cloudu, nebo externě. Implementace je na vás.
Požádáme váš cloud o zašifrování DEK, abychom získali encrypted DEK (eDEK). Pokud je váš KEK uložen externě, váš cloud jen provede další přeskok do vašeho externího úložiště v kroku, který je pro OpenAI netransparentní.
Šifrování
Při šifrování jsou vaše data zašifrována pomocí DEK a eDEK je uložen jako metadata souboru.

Dešifrování
Při dešifrování požádáme o dešifrování eDEK vaším cloudovým KMS na DEK a data dešifrujeme pomocí DEK.

Klíčové pojmy
Data Encryption Key (DEK) – klíč, který šifruje vaše data.
Encrypted Data Encryption Key (eDEK) – zašifrovaný DEK vygenerovaný vaším KMS
Key Encryption Key (KEK) – hlavní klíč, který spravujete a který šifruje DEK -> eDEK a dešifruje eDEK -> DEK. Tento klíč vždy zůstává mimo systémy OpenAI.
Požadavky na implementaci na vysoké úrovni
Ve vašem cloudovém poskytovateli
Vytvořte nový klíč ve svém cloudovém KMS (Azure, AWS nebo GCP)
Vytvořte vlastní, omezenou zásadu s oprávněními Encrypt/Decrypt pro KMS
Vytvořte pro OpenAI zásadu důvěryhodnosti (AWS), workload identity (GCP) nebo instanční objekt služby (pro Azure)
Přiřaďte OpenAI roli s omezenou zásadou pro přístup k vašemu KMS
Na platformách OpenAI
ChatGPT Enterprise
Pro účely testování vytvořte sandboxový pracovní prostor ChatGPT.
API
Na svém řídicím panelu OpenAI vytvořte nový projekt, na který bude použito šifrování.
Funkce specifické pro poskytovatele
Pro AWS bude OpenAI:
volat AssumeRole s ExternalID
Pro GCP bude OpenAI:
volat váš koncový bod STS z účtu OpenAI GCP
používat přístupový token GCP k volání encrypt/decrypt na vašem KMS.
Pro Azure bude OpenAI:
požadovat přístupový token pro trezor vašeho tenanta Azure
používat tento přístupový token k volání encrypt/decrypt ve vašem Key Vaultu.
Informace, které potřebujete od OpenAI
Ověřování
Pro AWS a GCP budete muset rozpoznat tokeny federované identity OpenAI. U Azure budete muset rozpoznat ID aplikace OpenAI pro registraci její aplikace.
Shrnutí parametrů ověřování
| Objekt zabezpečení OpenAI pro AWS | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| ID servisního účtu OpenAI pro GCP | 105900137572174660365 |
| ID aplikace OpenAI pro Azure | 20a14814-5ab7-4612-a671-1382b412bf93 |
Požadované informace během implementace podle vašeho poskytovatele cloudu
Pro AWS musíte nastavit zásadu důvěryhodnosti, která rozpoznává:
Principal OpenAI (číslo účtu + role)
ExternalID, které je ID vašeho projektu OpenAI
Pro GCP musíte nastavit identitu pracovního zatížení, která rozpoznává:
ID servisního účtu OpenAI
Audience, která je ID vašeho projektu OpenAI
Pro Azure musíte v tenantovi Azure vytvořit instanční objekt služby pro registraci aplikace OpenAI
Vytvořte jej pro ID klienta aplikace OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9
Můžete to provést odesláním požadavku POST na koncový bod https://graph.microsoft.com/v1.0/servicePrincipals.
Autorizace
Budete muset vytvořit zásadu, která umožní identitě OpenAI získat omezený přístup k vašemu KMS.
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
Další
V Azure pro typ klíče (algoritmus šifrování klíče) vyberte RSA, nikoli EC.
Informace, které od vás OpenAI potřebuje
Podle pokynů v tomto dokumentu zaregistrujte svůj KMS u OpenAI. Zde je souhrn parametrů, které budete muset poskytnout.
Související s ověřováním
AWS
IAM Role ARN - role, kterou má OpenAI převzít (příklad: arn:aws:iam::123456789:role/role-name)
ExternalID - ID vaší organizace OpenAI
GCP
Číslo projektu Workload Identity (příklad: 123456789)
ID fondu Workload Identity
ID poskytovatele Workload Identity
Povolené publikum: ID vaší organizace OpenAI
Azure
ID tenanta
| AWS | GCP | Azure | |
| Související s ověřováním | ID tenanta | ||
| Související s KMS | KMS ARN - (příklad: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | ID projektu KMS (příklad: adjective-noun-12345)Název okruhu klíčů KMSNázev klíče KMSUmístění klíče KMS (příklad: us-east1) | URI trezoru (příklad: https://your-vault-name.vault.azure.net/)Název klíče |
Po registraci KMS u OpenAI pokračujte podle pokynů v dokumentu a aktivujte konfiguraci EKM v projektu API. Pro účely testování vytvořte nový projekt OpenAI API.
Průvodci implementací podle poskytovatele
Podrobné pokyny najdete v příslušných odkazech níže. Upozorňujeme, že se zaměřují na požadavky integrace s OpenAI a nemají sloužit jako komplexní průvodce celým vaším prostředím
Nepodporované funkce při zapnutém EKM
V tomto počátečním vydání nejsou při zapnutém EKM k dispozici následující funkce:
Aplikace se synchronizací
Funkce, které nejsou obecně dostupné (tj. cokoli, co je stále v beta/alpha verzi)
