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 trust policy instellen die het volgende herkent:
De principal van OpenAI (accountnummer + rol)
Een ExternalID dat uw OpenAI-project-ID is
Voor GCP moet u een workload identity instellen die het volgende herkent:
De serviceaccount-ID van OpenAI
Een audience die uw OpenAI-project-ID is
Voor Azure moet u een service principal aanmaken in uw Azure-tenant voor de app-registratie van OpenAI
Maak er een aan voor de application client id van OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9
U kunt dit doen door te posten naar het https://graph.microsoft.com/v1.0/servicePrincipals-endpoint.
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 samenvatting van de parameters die u moet opgeven.
Authenticatiegerelateerd
AWS
IAM Role ARN - rol die OpenAI kan aannemen (voorbeeld: arn:aws:iam::123456789:role/role-name)
ExternalID - uw OpenAI-organisatie-ID
GCP
Workload Identity Project Number (voorbeeld: 123456789)
Workload Identity Pool ID
Workload Identity Provider ID
Allowed audience: uw OpenAI-organisatie-ID
Azure
Tenant ID
| AWS | GCP | Azure | |
| Authenticatiegerelateerd | Tenant ID | ||
| KMS-gerelateerd | KMS ARN - (voorbeeld: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | KMS Project ID (voorbeeld: adjective-noun-12345)KMS-sleutelringnaamKMS-sleutelnaamKMS-sleutellocatie (voorbeeld: us-east1) | Vault-URI (voorbeeld: https://your-vault-name.vault.azure.net/)Sleutelnaam |
Nadat u uw KMS bij OpenAI hebt geregistreerd, volgt u verder de instructies in het document om uw EKM-configuratie op een API-project te activeren. Maak een nieuw OpenAI API-project voor testdoeleinden.
Providerspecifieke implementatiehandleidingen
Raadpleeg de onderstaande links voor stapsgewijze begeleiding. Let op: deze zijn gericht op de integratievereisten met OpenAI en zijn niet bedoeld 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)
