Overzicht
Enterprise Key Management (EKM) stelt u in staat uw klantcontent bij OpenAI te versleutelen met sleutels die worden beheerd door uw eigen externe Key Management System (KMS), beschikbaar voor zowel ChatGPT Enterprise als de API.
OpenAI ondersteunt Bring Your Own Key (BYOK)-versleuteling met externe accounts in AWS KMS, Google Cloud (GCP) en Azure Key Vault.
Op dit moment is de implementatie van EKM beperkt tot Enterprise- en Edu-werkruimtes met een toegewezen OpenAI-accountvertegenwoordiger.
Hoe OpenAI EKM-versleuteling werkt
Hoofdstroom
We genereren een Data Encryption Key (DEK) voor uw cloudprovider.
Uw cloud-KMS beheert een master-Key Encryption Key (KEK), die binnen uw cloud of extern wordt opgeslagen. De implementatie is aan u.
We verzoeken uw cloud om de DEK te versleutelen, om een encrypted DEK (eDEK) te verkrijgen. Als uw KEK extern is opgeslagen, maakt uw cloud alleen een extra sprong naar uw externe opslag, in een stap die voor OpenAI niet zichtbaar is.
Versleuteling
Bij versleuteling worden uw gegevens versleuteld met de DEK en wordt de eDEK als metadata bij het bestand opgeslagen.

Ontsleuteling
Bij ontsleuteling verzoeken we om de eDEK door uw cloud-KMS te laten ontsleutelen naar de DEK, en ontsleutelen we de gegevens met de DEK.

Belangrijke termen
Data Encryption Key (DEK) - de sleutel die uw gegevens versleutelt.
Encrypted Data Encryption Key (eDEK) - de versleutelde DEK, gegenereerd door uw KMS
Key Encryption Key (KEK) - de hoofdsleutel die u beheert en die de DEK -> eDEK versleutelt en eDEK -> DEK ontsleutelt. Deze sleutel blijft altijd buiten de systemen van OpenAI.
Algemene vereisten voor implementatie
Bij uw cloudprovider
Maak een nieuwe sleutel aan in uw cloud-KMS (Azure, AWS of GCP)
Maak een aangepast, beperkt beleid met Encrypt/Decrypt-machtigingen op het KMS
Maak een trust policy (AWS), een workload identity (GCP) of een service principal (voor Azure) voor OpenAI
Wijs OpenAI een rol toe met het beperkte beleid voor toegang tot uw KMS
In OpenAI-platforms
ChatGPT Enterprise
Maak een sandbox-werkruimte in ChatGPT voor testdoeleinden.
API
Maak in uw OpenAI-dashboard een nieuw project waarin versleuteling wordt toegepast.
Providerspecifieke functies
Voor AWS zal OpenAI:
AssumeRole aanroepen met een ExternalID
Voor GCP zal OpenAI:
Uw STS-endpoint aanroepen vanuit een OpenAI GCP-account
De GCP-toegangstoken gebruiken om encrypt/decrypt op uw KMS aan te roepen.
Voor Azure zal OpenAI:
Een toegangstoken aanvragen voor de vault van uw Azure-tenant
Die toegangstoken gebruiken om encrypt/decrypt op uw Key Vault aan te roepen.
Informatie die u van OpenAI nodig heeft
Authenticatie
U moet de gefedereerde identiteitstokens van OpenAI voor AWS en GCP herkennen. Voor Azure moet u de applicatie-ID van OpenAI voor de app-registratie herkennen.
Samenvatting van authenticatieparameters
| OpenAI AWS-principal | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| OpenAI GCP-serviceaccount-ID | 105900137572174660365 |
| OpenAI Azure-applicatie-ID | 20a14814-5ab7-4612-a671-1382b412bf93 |
Vereiste informatie tijdens de implementatie op basis van uw cloudprovider
Voor AWS, moet u een vertrouwensbeleid instellen dat het volgende herkent:
De principal van OpenAI (accountnummer + rol)
Een ExternalID die uw OpenAI-project-ID is
Voor GCP moet u een workload identity instellen die het volgende herkent:
De serviceaccount-ID van OpenAI
Een doelgroep die uw OpenAI-project-ID is
Voor Azure moet u een service-principal maken in uw Azure-tenant voor de app-registratie van OpenAI
Maak er een voor de application client id van OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9
U kunt dit doen door een POST te sturen naar het endpoint https://graph.microsoft.com/v1.0/servicePrincipals.
Autorisatie
U moet een beleid maken waarmee de identiteit van OpenAI beperkte toegang tot uw KMS krijgt.
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
Overig
Selecteer in Azure bij Key type (sleutelversleutelingsalgoritme) RSA, niet EC.
Informatie die OpenAI van u nodig heeft
Volg de instructies in dit document om uw KMS bij OpenAI te registreren. Hier is een overzicht van de parameters die u moet opgeven.
Verificatiegerelateerd
AWS
IAM-rol-ARN - rol die OpenAI kan aannemen (voorbeeld: arn:aws:iam::123456789:role/role-name)
ExternalID - uw OpenAI-organisatie-ID
GCP
Projectnummer voor Workload Identity (voorbeeld: 123456789)
Workload Identity-pool-ID
Workload Identity-provider-ID
Toegestane doelgroep: uw OpenAI-organisatie-ID
Azure
Tenant-ID
| AWS | GCP | Azure | |
| Verificatiegerelateerd | Tenant-ID | ||
| KMS-gerelateerd | KMS-ARN - (voorbeeld: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | KMS-project-ID (voorbeeld: adjective-noun-12345)Naam van KMS-sleutelringNaam van KMS-sleutelLocatie van KMS-sleutel (voorbeeld: us-east1) | Vault-URI (voorbeeld: https://your-vault-name.vault.azure.net/)Sleutelnaam |
Nadat u uw KMS bij OpenAI hebt geregistreerd, blijft u de instructies in het document volgen om uw EKM-configuratie voor een API-project te activeren. Maak een nieuw OpenAI API-project voor testdoeleinden.
Providerspecifieke implementatiehandleidingen
Zie de bijbehorende links hieronder voor stapsgewijze begeleiding. Houd er rekening mee dat deze gericht zijn op de integratievereisten met OpenAI en niet bedoeld zijn als uitgebreide handleiding voor uw volledige omgeving
Niet-ondersteunde functies als EKM is ingeschakeld
In deze eerste release zijn de volgende functies niet beschikbaar als EKM is ingeschakeld:
Apps met synchronisatie
Functies die niet algemeen beschikbaar zijn (d.w.z. alles wat nog in bèta/alpha is)
