Pregled
Enterprise Key Management (EKM) vam omogoča šifriranje vsebine strank pri OpenAI s ključi, ki jih upravlja vaš lasten zunanji sistem za upravljanje ključev (KMS), na voljo tako za ChatGPT Enterprise kot za API.
OpenAI podpira šifriranje Bring Your Own Key (BYOK) z zunanjimi računi v AWS KMS, Google Cloud (GCP)) in Azure Key Vault.
Trenutno je implementacija EKM omejena na delovne prostore Enterprise in Edu z določenim predstavnikom računa OpenAI.
Kako deluje šifriranje OpenAI EKM
Potek na visoki ravni
Za vašega ponudnika oblaka ustvarimo Data Encryption Key (DEK).
Vaš oblačni KMS upravlja glavni Key Encryption Key (KEK), ki je shranjen v vašem oblaku ali zunaj njega. Izvedba je odvisna od vas.
Od vašega oblaka zahtevamo šifriranje DEK, da dobimo encrypted DEK (eDEK). Če je vaš KEK shranjen zunaj, vaš oblak le opravi dodaten preskok do vašega zunanjega skladišča v koraku, ki je za OpenAI netransparenten.
Šifriranje
Pri šifriranju so vaši podatki šifrirani z DEK, eDEK pa je shranjen kot metapodatek datoteke.

Dešifriranje
Pri dešifriranju zahtevamo, da vaš oblačni KMS dešifrira eDEK v DEK, nato pa podatke dešifriramo z DEK.

Ključni izrazi
Data Encryption Key (DEK) - ključ, ki šifrira vaše podatke.
Encrypted Data Encryption Key (eDEK) - šifrirani DEK, ki ga ustvari vaš KMS
Key Encryption Key (KEK) - glavni ključ, ki ga upravljate in ki šifrira DEK -> eDEK ter dešifrira eDEK -> DEK. Ta ključ vedno ostane zunaj sistemov OpenAI.
Glavne zahteve za implementacijo
Pri vašem ponudniku oblaka
V svojem oblačnem KMS (Azure, AWS ali GCP) ustvarite nov ključ
Ustvarite pravilnik po meri z omejenim obsegom in dovoljenji Encrypt/Decrypt za KMS
Za OpenAI ustvarite politiko zaupanja (AWS), workload identity (GCP) ali glavni storitveni subjekt (za Azure)
OpenAI dodelite vlogo z omejenim pravilnikom za dostop do vašega KMS
Na platformah OpenAI
ChatGPT Enterprise
Za namene testiranja ustvarite peskovniški delovni prostor ChatGPT.
API
Na nadzorni plošči OpenAI ustvarite nov projekt, v katerem bo uporabljeno šifriranje.
Funkcije, specifične za ponudnika
Za AWS bo OpenAI:
poklical AssumeRole z ExternalID
Za GCP bo OpenAI:
poklical vašo končno točko STS iz računa OpenAI GCP
uporabil dostopni žeton GCP za klic encrypt/decrypt v vašem KMS.
Za Azure bo OpenAI:
zahteval dostopni žeton za trezor vašega najemnika Azure
uporabil ta dostopni žeton za klic encrypt/decrypt v vašem Key Vaultu.
Informacije, ki jih potrebujete od OpenAI
Preverjanje pristnosti
Za AWS in GCP boste morali prepoznati federirane identitetne žetone OpenAI. Za Azure boste morali prepoznati ID aplikacije OpenAI za registracijo njegove aplikacije.
Povzetek parametrov preverjanja pristnosti
| Glavni subjekt OpenAI AWS | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| ID storitvenega računa OpenAI GCP | 105900137572174660365 |
| ID aplikacije OpenAI Azure | 20a14814-5ab7-4612-a671-1382b412bf93 |
Zahtevane informacije med implementacijo glede na vašega ponudnika oblaka
Za AWS morate nastaviti politiko zaupanja, ki prepozna:
principal OpenAI (številka računa + vloga)
ExternalID, ki je ID vašega projekta OpenAI
Za GCP morate nastaviti identiteto delovne obremenitve, ki prepozna:
ID storitvenega računa OpenAI
Občinstvo, ki je ID vašega projekta OpenAI
Za Azure morate ustvariti glavnico storitve v svojem najemniku Azure za registracijo aplikacije OpenAI
Ustvarite jo za ID odjemalca aplikacije OpenAI: 20a14814-5ab7-4612-a671-1382b412bf9
To lahko storite tako, da objavite v končno točko https://graph.microsoft.com/v1.0/servicePrincipals.
Pooblastitev
Ustvariti boste morali pravilnik, ki identiteti OpenAI omogoča omejen dostop do vašega KMS.
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
Drugo
V Azure za vrsto ključa (algoritem za šifriranje ključa) izberite RSA, ne EC.
Informacije, ki jih OpenAI potrebuje od vas
Upoštevajte navodila v tem dokumentu, da registrirate svoj KMS pri OpenAI. Tukaj je povzetek parametrov, ki jih boste morali navesti.
Povezano s preverjanjem pristnosti
AWS
IAM Role ARN – vloga, ki jo lahko prevzame OpenAI (primer: arn:aws:iam::123456789:role/role-name)
ExternalID – ID vaše organizacije OpenAI
GCP
Številka projekta Workload Identity (primer: 123456789)
ID nabora Workload Identity
ID ponudnika Workload Identity
Dovoljeno občinstvo: ID vaše organizacije OpenAI
Azure
ID najemnika
| AWS | GCP | Azure | |
| Povezano s preverjanjem pristnosti | ID najemnika | ||
| Povezano s KMS | KMS ARN – (primer: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | ID projekta KMS (primer: adjective-noun-12345)Ime obroča ključev KMSIme ključa KMSLokacija ključa KMS (primer: us-east1) | URI trezorja (primer: https://your-vault-name.vault.azure.net/)Ime ključa |
Ko registrirate svoj KMS pri OpenAI, še naprej upoštevajte navodila v dokumentu, da aktivirate svojo konfiguracijo EKM v projektu API. Ustvarite nov projekt OpenAI API za namene testiranja.
Vodniki za implementacijo za posamezne ponudnike
Za navodila po korakih glejte ustrezne spodnje povezave. Upoštevajte, da se ti vodniki osredotočajo na zahteve integracije z OpenAI in niso namenjeni kot celovit vodnik za vaše celotno okolje
Nepodprte funkcije, če je EKM omogočen
Če je EKM omogočen, naslednje funkcije niso na voljo:
Funkcije, ki niso splošno dostopne, vključno s funkcijami v različici beta ali alfa.
