Oversigt
Enterprise Key Management (EKM) gør det muligt for OpenAI at kryptere data ved hjælp af en masternøgle, som du kontrollerer. For at OpenAI kan kalde krypterings-/dekrypteringshandlinger på din Key Vault, skal vi have tildelt adgang. Dette dokument viser, hvordan du konfigurerer din Azure-konto, så OpenAI kan påtage sig en rolle med Key Vault-tilladelser.

Trin
1. Opret en tjenesteprincipal for OpenAI på din konto
Hent et adgangstoken
az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_IDOpret tjenesteprincipalen – appId i anmodningen nedenfor er OpenAI’s applikationsklient-id. Dette opretter en principal med visningsnavnet “EKM - OpenAI Azure” – husk dette til senere trin.
OpenAI / Azure EKM-integrationsvejledning – Opret tjenesteprincipal
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. Opret en brugerdefineret rolle til begrænset KMS-adgang
Gå til Abonnementer -> Adgangskontrol (IAM)
Vælg Tilføj brugerdefineret rolle i rullemenuen + Tilføj
Gå til fanen JSON, klik på Rediger, og tilføj følgende:
Et vilkårligt rollenavn – husk det navn, du valgte
Følgende tilladelser i dataActions:
Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/actionMicrosoft.KeyVault/vaults/keys/read

3. Opret en Key Vault + nøgle
Hvis du ikke allerede har en, skal du oprette en ny Key Vault i det samme abonnement, hvor du lige har oprettet din brugerdefinerede rolle.
Opret en ny nøgle i den Key Vault:
Gå til Key Vault -> Objekter -> Nøgler, og klik derefter på Generer/importér
Vælg Generer under Indstillinger

Vælg RSA som krypteringsalgoritme.
Du kan vælge en hvilken som helst RSA-nøglestørrelse
Angiv et nøglenavn med følgende format:
<org-xxx>--<any_name>, hvororg-xxxer dit OpenAI-organisations-id, som du kan finde på https://platform.openai.com/settings/organization/general

Hvis du ikke kan se eller oprette en nøgle, skal du sikre dig, at du har rollen Key Vault-administrator. Dette er nødvendigt, selvom du har rollen Ejer. Sådan får du tildelt rollen:
Gå til Key Vault -> Adgangskontrol (IAM)
Klik på Tilføj -> Tilføj rolletildeling

4. Opret en rolletildeling for OpenAI-tjenesteprincipal + ny brugerdefineret KMS + ny nøgle
Gå til Key Vault -> Objekter -> Nøgler, og klik derefter på rækken for den nøgle, du har oprettet
Gå til Adgangskontrol (IAM) for den nøgle, du lige har klikket på (ikke din Key Vault).
Vælg Tilføj rolletildeling i rullemenuen + Tilføj

Vælg navnet på den brugerdefinerede rolle, du lige har oprettet, på fanen Rolle.

På fanen Medlemmer:
Klik på “+ Vælg medlemmer”
Skriv “ekm -” i søgefeltet, hvorefter den OpenAI-tjenesteprincipal, du oprettede i trin 1, bør blive indlæst

5. Anvend eventuelle yderligere begrænsninger i overensstemmelse med dine egne sikkerhedspraksisser
Ovenstående er de minimumsoplysninger, OpenAI skal bruge for at konfigurere EKM. Du kan frit anvende yderligere nøglepolitikker eller begrænsninger i overensstemmelse med dine egne interne sikkerhedspraksisser, så længe OpenAI kan kalde krypterings- og dekrypteringshandlinger på din KMS. Når du kalder nøgleregistreringsendepunktet hos OpenAI, som er beskrevet nedenfor, validerer vi din opsætning.
Efter du har gennemført trinnene ovenfor
ChatGPT Enterprise
Kontakt venligst din OpenAI-kontaktperson, og del følgende:
"tenant_id": "<YOUR_AZURE_TENANT_UUID>"
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"
"key_name": "<YOUR_KEY_NAME>"
Navnet på den Azure Key Vault-masternøgle, du administrerer
Nøglenavnet skal have formen <org-xxx>--<any_name>, hvor org-xxx er dit OpenAI-organisations-id, som du kan finde på https://platform.openai.com/settings/organization/general
Vi aktiverer EKM for din ChatGPT-organisation/dit arbejdsområde.
API
Registrer din eksterne nøgle hos OpenAI
Følg vejledningen i denne API-reference: Eksterne nøgler i Management API
Registrer først din eksterne nøgle på OpenAI-organisationsniveau, hvilket genererer et eksternt nøgle-id i formen extkey_xxx
I dette trin validerer vi, at dit input er gyldigt, og at vi kan godkende os til din KMS.
Dette føjer endnu ikke EKM til dit OpenAI-projekt.
# This generates an external key ID of the form 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>"
}'Opret derefter et OpenAI-projekt, der er knyttet til den eksterne nøgle. Herefter er EKM aktiveret på dit projekt.
Svarteksten fra dette API-kald giver dig projekt-id’et (proj_xxx)
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"
}'