OpenAI
Această pagină a fost tradusă automat. Vezi articolul original în limba engleză.

Instrucțiuni de integrare OpenAI / Azure EKM

Instrucțiuni pas cu pas pentru a configura Azure și a activa EKM

Actualizat: 16 days ago

Prezentare generală

Enterprise Key Management (EKM) permite OpenAI să cripteze datele folosind o cheie principală pe care o controlați. Pentru ca OpenAI să poată apela operațiuni de criptare/decriptare în Key Vault, va trebui să ni se acorde acces. Acest document arată cum să configurați contul dvs. Azure astfel încât OpenAI să poată prelua un rol cu permisiuni Key Vault.

Azure EKM flow where OpenAI EKM uses Microsoft Entra ID to access your Key Vault and master KEK

Pași

1. Creați un principal de serviciu pentru OpenAI în contul dvs.

  1. Obțineți un token de acces

az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID
  1. Creați principalul de serviciu - appId din solicitarea de mai jos este id-ul clientului aplicației OpenAI. Aceasta va crea un principal cu numele afișat „EKM - OpenAI Azure” - rețineți-l pentru pașii următori.

Instrucțiuni de integrare OpenAI / Azure EKM - Creați principalul de serviciu

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. Creați un rol personalizat pentru acces KMS limitat

  1. Accesați Abonamente -> Control acces (IAM)

  2. În meniul derulant + Adăugați, selectați Adăugați rol personalizat

  3. Accesați fila JSON, faceți clic pe Editați și adăugați următoarele:

    1. Orice nume de rol - rețineți numele pe care l-ați selectat

    2. Următoarele permisiuni în dataActions:

      1. Microsoft.KeyVault/vaults/keys/encrypt/action

      2. Microsoft.KeyVault/vaults/keys/decrypt/action

      3. Microsoft.KeyVault/vaults/keys/read

OpenAI / Azure EKM Integration Instructions Custom Role

3. Creați un Key Vault + o cheie

Dacă nu aveți deja unul, creați un Key Vault nou în același abonament în care tocmai ați creat rolul personalizat.

În acel Key Vault, creați o cheie nouă:

  1. Accesați Key Vault -> Obiecte -> Chei, apoi faceți clic pe Generare/Import

  2. Sub Opțiuni, selectați Generare

Azure Key Vault Keys page with Generate/Import highlighted to add a key
  1. Selectați RSA pentru algoritmul de criptare.

  2. Puteți selecta orice dimensiune de cheie RSA

  3. Furnizați un nume de cheie cu următorul format: <org-xxx>--<any_name>, unde org-xxx este ID-ul organizației dvs. OpenAI, pe care îl puteți găsi la https://platform.openai.com/settings/organization/general

Azure Key Vault key generation form with RSA selected and key name org-abcdefg--test-keyvault-key

Dacă nu puteți vizualiza sau crea o cheie, asigurați-vă că aveți rolul Administrator Key Vault. Acest lucru este necesar chiar dacă aveți rolul Proprietar. Pentru a vi se atribui rolul:

  1. Accesați Key Vault -> Control acces (IAM)

  2. Faceți clic pe Adăugați -> Adăugați atribuire de rol

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment

4. Creați o atribuire de rol pentru principalul de serviciu OpenAI + noul KMS personalizat + noua cheie

  1. Accesați Key Vault -> Obiecte -> Chei, apoi faceți clic pe rândul cheii pe care ați creat-o

  2. Accesați Control acces (IAM) pentru cheia pe care tocmai ați selectat-o (nu seiful dvs. de chei).

  3. În meniul derulant + Adăugați, selectați Adăugați atribuire de rol

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment
  1. În fila Rol, selectați numele rolului personalizat pe care tocmai l-ați creat.

Azure role list filtered for openai- with the openai-azure-kms-role entry
  1. În fila Membri:

    1. Faceți clic pe „+ Selectați membri”

    2. Tastați „ekm -” în bara de căutare, apoi ar trebui să se încarce principalul de serviciu OpenAI pe care l-ați creat la Pasul 1

Azure role assignment Members step with EKM - OpenAI Azure Application selected as a member

5. Aplicați orice restricții suplimentare în conformitate cu propriile practici de securitate

Mai sus se află informațiile minime necesare de care OpenAI are nevoie pentru a configura EKM. Puteți aplica politici sau restricții suplimentare pentru chei în conformitate cu propriile practici interne de securitate, atât timp cât OpenAI poate apela operațiuni de criptare și decriptare în KMS-ul dvs. Când apelați punctul final de înregistrare a cheii cu OpenAI descris mai jos, vom valida configurarea dvs.

După finalizarea pașilor de mai sus

ChatGPT Enterprise

Contactați persoana dvs. de contact de la OpenAI și partajați următoarele:

  • "tenant_id": "<YOUR_AZURE_TENANT_UUID>"

  • "vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"

  • "key_name": "<YOUR_KEY_NAME>"

  • Numele cheii principale Azure Key Vault pe care o gestionați

  • Numele cheii trebuie să aibă forma <org-xxx>--<any_name>, unde org-xxx este ID-ul organizației dvs. OpenAI, pe care îl puteți găsi la https://platform.openai.com/settings/organization/general

Vom activa EKM pentru organizația/spațiul dvs. de lucru ChatGPT.

API

Înregistrați cheia externă la OpenAI

Urmați instrucțiunile din această referință API Chei externe în Management API

  • Mai întâi, înregistrați cheia externă la nivelul organizației OpenAI, ceea ce va genera un id de cheie externă de forma extkey_xxx

  • În acest pas, vom valida că datele introduse sunt valide și că ne putem autentifica la KMS-ul dvs.

  • Aceasta nu va adăuga încă EKM la proiectul dvs. OpenAI.

# 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>"
}'
  • Apoi, creați un proiect OpenAI asociat cu cheia externă. După aceasta, EKM este activat pentru proiectul dvs.

  • Corpul răspunsului acestui apel API vă va furniza ID-ul proiectului (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"
}'

A fost util acest articol?