Overzicht
Met Enterprise Key Management (EKM) kan OpenAI gegevens versleutelen met een hoofdsleutel die jij beheert. Om OpenAI versleutel-/ontsleutelbewerkingen op je Key Vault te laten aanroepen, moeten we toegang krijgen. In dit document wordt uitgelegd hoe je je Azure-account instelt zodat OpenAI een rol met Key Vault-machtigingen kan aannemen.

Stappen
1. Maak een service-principal voor OpenAI aan in je account
Haal een toegangstoken op
az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_IDMaak de service-principal aan - de appId in de onderstaande aanvraag is de client-id van de OpenAI-toepassing. Hiermee wordt een principal aangemaakt met de weergavenaam ‘EKM - OpenAI Azure’ - onthoud dit voor latere stappen.
OpenAI / Azure EKM-integratie-instructies - Service-principal aanmaken
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. Maak een aangepaste rol aan voor beperkte KMS-toegang
Ga naar Abonnementen -> Toegangsbeheer (IAM)
Selecteer onder de vervolgkeuzelijst + Toevoegen de optie Aangepaste rol toevoegen
Ga naar het tabblad JSON, klik op Bewerken en voeg het volgende toe:
Een willekeurige rolnaam - onthoud de naam die je hebt geselecteerd
De volgende machtigingen in dataActions:
Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/actionMicrosoft.KeyVault/vaults/keys/read

3. Maak een Key Vault + sleutel aan
Als je er nog geen hebt, maak dan een nieuwe Key Vault aan in hetzelfde abonnement waarin je zojuist je aangepaste rol hebt aangemaakt.
Maak in die Key Vault een nieuwe sleutel aan:
Ga naar Key Vault -> Objecten -> Sleutels en klik vervolgens op Genereren/Importeren
Selecteer onder Opties Genereren

Selecteer RSA als versleutelingsalgoritme.
Je kunt elke RSA-sleutelgrootte selecteren
Geef een sleutelnaam op met de volgende indeling:
<org-xxx>--<any_name>, waarbijorg-xxxje OpenAI-organisatie-ID is dat je kunt vinden op https://platform.openai.com/settings/organization/general

Als je geen sleutel kunt bekijken of aanmaken, controleer dan of je de rol Key Vault Administrator hebt. Dit is zelfs nodig als je de rol Owner hebt. Om de rol toegewezen te krijgen:
Ga naar Key Vault -> Toegangsbeheer (IAM)
Klik op Toevoegen -> Roltoewijzing toevoegen

4. Maak een roltoewijzing aan voor de OpenAI-service-principal + nieuwe aangepaste KMS + nieuwe sleutel
Ga naar Key Vault -> Objecten -> Sleutels en klik vervolgens op de rij voor de sleutel die je hebt aangemaakt
Ga naar Toegangsbeheer (IAM) voor de sleutel waarop je zojuist hebt geklikt (niet je Key Vault).
Selecteer onder de vervolgkeuzelijst + Toevoegen de optie Roltoewijzing toevoegen

Selecteer op het tabblad Rol de naam van de aangepaste rol die je zojuist hebt aangemaakt.

Op het tabblad Leden:
Klik op ‘+ Leden selecteren’
Typ ‘ekm -’ in de zoekbalk; daarna zou de OpenAI-service-principal die je in stap 1 hebt aangemaakt moeten laden

5. Pas eventuele aanvullende beperkingen toe in lijn met je eigen beveiligingspraktijken
Hierboven staat de minimaal vereiste informatie die OpenAI nodig heeft om EKM in te stellen. Je kunt aanvullende sleutelbeleidsregels of beperkingen toepassen in lijn met je eigen interne beveiligingspraktijken, zolang OpenAI versleutel- en ontsleutelbewerkingen op je KMS kan aanroepen. Wanneer je het hieronder beschreven endpoint voor sleutelregistratie bij OpenAI aanroept, valideren we je configuratie.
Na het voltooien van bovenstaande stappen
ChatGPT Enterprise
Neem contact op met je OpenAI-contactpersoon en deel het volgende:
"tenant_id": "<YOUR_AZURE_TENANT_UUID>"
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"
"key_name": "<YOUR_KEY_NAME>"
De naam van de Azure Key Vault-hoofdsleutel die je beheert
De sleutelnaam moet de vorm <org-xxx>--<any_name> hebben, waarbij org-xxx je OpenAI-organisatie-ID is dat je kunt vinden op https://platform.openai.com/settings/organization/general
We schakelen EKM in voor je ChatGPT-organisatie/werkruimte.
API
Registreer je externe sleutel bij OpenAI
Volg de instructies in deze API-referentie Externe sleutels in de Management API
Registreer eerst je externe sleutel op OpenAI-organisatieniveau; hiermee wordt een externe sleutel-id gegenereerd met de vorm extkey_xxx
In deze stap valideren we dat je invoer geldig is en dat we ons bij je KMS kunnen verifiëren.
Dit voegt EKM nog niet toe aan je OpenAI-project.
# 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>"
}'Maak vervolgens een OpenAI-project aan dat aan de externe sleutel is gekoppeld. Hierna is EKM geactiveerd voor je project.
De antwoordbody van deze API-aanroep geeft je de project-ID (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"
}'