Oversikt
Enterprise Key Management (EKM) lar OpenAI kryptere data ved hjelp av en hovednøkkel som du kontrollerer. For at OpenAI skal kunne kalle krypterings-/dekrypteringsoperasjoner på Key Vault, må vi få tilgang. Dette dokumentet viser hvordan du setter opp Azure-kontoen din slik at OpenAI kan påta seg en rolle med Key Vault-tillatelser.

Trinn
1. Opprett en tjenestehovedkonto for OpenAI i kontoen din
Hent et tilgangstoken
az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID2. Opprett tjenestehovedkontoen – appId i forespørselen nedenfor er OpenAIs klient-ID for applikasjonen. Dette vil opprette en hovedkonto med visningsnavnet «EKM - OpenAI Azure» – husk dette til senere trinn.
Instruksjoner for OpenAI / Azure EKM-integrasjon – Opprett tjenestehovedkonto
curl -X POST https://graph.microsoft.com/v1.0/servicePrincipals \
-H "Authorization: Bearer $TOKEN_FROM_ABOVE" \
-H "Content-Type: application/json" \
–d '{"appId": "20a14814-5ab7-4612-a671-1382b412bf93"}'2. Opprett en egendefinert rolle for begrenset KMS-tilgang
Gå til Subscriptions -> Access Control (IAM)
Velg Add custom role under rullegardinmenyen + Add
Gå til fanen JSON, klikk på Edit, og legg til følgende
Et valgfritt rollenavn – husk navnet du valgte
Følgende tillatelser i dataActions
Microsoft.KeyVault/vaults/keys/encrypt/action
Microsoft.KeyVault/vaults/keys/decrypt/action
Microsoft.KeyVault/vaults/keys/read

3. Opprett en Key Vault + nøkkel
Hvis du ikke allerede har en, oppretter du en ny Key Vault i samme abonnement der du nettopp opprettet den egendefinerte rollen
I den Key Vault-en oppretter du en ny nøkkel:
Gå til Key Vault -> Objects -> Keys, og klikk deretter på Generate/Import
Velg Generate
under Options
Velg RSA som krypteringsalgoritme.
Du kan velge en hvilken som helst RSA-nøkkelstørrelse
Oppgi et nøkkelnavn i følgende format: <org-xxx>--<any_name>, der org-xxx er OpenAI-organisasjons-ID-en din, som du finner på https://platform.openai.com/settings/organization/general

Hvis du ikke kan vise eller opprette en nøkkel, må du sørge for at du har rollen Key Vault Administrator. Dette er nødvendig selv om du har rollen Owner. Slik blir du tildelt rollen:
Gå til Key Vault->Access Control (IAM)
Klikk på Add-> Add role assignment

4. Opprett en rolletildeling for OpenAIs tjenestehovedkonto + ny egendefinert KMS + ny nøkkel
Gå til Key Vault -> Objects -> Keys og klikk deretter på raden for nøkkelen du opprettet
Gå til Access control (IAM) for nøkkelen du nettopp klikket på (ikke Key Vault-en din).
Velg Add role assignment
under rullegardinmenyen + Add
I fanen Role velger du navnet på den egendefinerte rollen du nettopp opprettet.

I fanen Members:
Klikk på «+ Select members»
Skriv «ekm -» i søkefeltet, så skal OpenAIs tjenestehovedkonto som du opprettet i trinn 1, lastes inn

5. Bruk eventuelle ytterligere begrensninger i tråd med egne sikkerhetsrutiner
Ovenfor er minimumsinformasjonen OpenAI trenger for å sette opp EKM. Du står fritt til å bruke ytterligere nøkkelpolicyer eller begrensninger i tråd med egne interne sikkerhetsrutiner, så lenge OpenAI kan kalle krypterings- og dekrypteringsoperasjoner på KMS-en din. Når du kaller endepunktet for nøkkelregistrering med OpenAI, som beskrevet nedenfor, vil vi validere oppsettet ditt.
Etter at du har fullført trinnene ovenfor
ChatGPT Enterprise
Ta kontakt med OpenAI-kontakten din og del følgende:
"tenant_id": "<YOUR_AZURE_TENANT_UUID>"
Azure-leierens UUID
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"
URI-en til Azure-hvelvet som inneholder hovednøkkelen du administrerer
"key_name": "<YOUR_KEY_NAME>"
Navnet på hovednøkkelen i Azure Key Vault som du administrerer
Nøkkelnavnet må ha formen <org-xxx>--<any_name>, der org-xxx er OpenAI-organisasjons-ID-en din, som du finner på https://platform.openai.com/settings/organization/general
Vi vil aktivere EKM for ChatGPT-organisasjonen/arbeidsområdet ditt.
API
Registrer den eksterne nøkkelen din hos OpenAI
Følg instruksjonene i denne API-referansen Eksterne nøkler i Management API
Registrer først den eksterne nøkkelen din på OpenAI-organisasjonsnivå, noe som vil generere en ekstern nøkkel-ID på formen extkey_xxx
I dette trinnet vil vi validere at inndataene dine er gyldige, og at vi kan autentisere mot KMS-en din.
Dette vil ikke legge til EKM i OpenAI-prosjektet ditt ennå.
# Dette genererer en ekstern nøkkel-ID på formen extkey_xxx
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "azure",
"name": "<ANY_FRIENDLY_NAME>",
"tenant_id": "<YOUR_AZURE_TENANT_UUID>",
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/",
"key_name": "<YOUR_KEY_NAME>"
}'Deretter oppretter du et OpenAI-prosjekt knyttet til den eksterne nøkkelen. Etter dette er EKM aktivert for prosjektet ditt.
Svarteksten i dette API-kallet vil gi deg prosjekt-ID-en (proj_xxx)
Instruksjoner for OpenAI / Azure EKM-integrasjon – Opprett prosjekt
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "Some Project",
"external_key_id": "extkey_xxxx"
}'