OpenAI
Ova stranica je mašinski prevedena. Pogledaj originalni članak na engleskom jeziku.

OpenAI / Azure EKM upute za integraciju

Upute korak po korak za provisioniranje Azurea i aktiviranje EKM-a

Ažurirano: 7 days ago

Pregled

Enterprise Key Management (EKM) omogućava OpenAI-u da šifrira podatke koristeći glavni ključ kojim vi upravljate. Da bi OpenAI mogao pozivati operacije šifriranja/dešifriranja na vašem Key Vaultu, morat ćemo dobiti pristup. Ovaj dokument pokazuje kako postaviti vaš Azure račun kako bi OpenAI mogao preuzeti ulogu s dozvolama za Key Vault.

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

Koraci

1. Kreirajte principal usluge za OpenAI u svom računu

  1. Dobijte pristupni token

az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID
  1. Kreirajte principal usluge – appId u zahtjevu u nastavku je ID klijenta OpenAI aplikacije. Time će se kreirati principal s prikaznim imenom „EKM - OpenAI Azure“ – zapamtite ga za kasnije korake.

Upute za integraciju OpenAI / Azure EKM - Kreiranje principala usluge

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. Kreirajte prilagođenu ulogu za ograničen pristup KMS-u

  1. Idite na Subscriptions -> Access Control (IAM)

  2. U padajućem izborniku + Add odaberite Add custom role

  3. Idite na karticu JSON, kliknite Edit i dodajte sljedeće:

    1. Bilo koji naziv uloge – zapamtite naziv koji ste odabrali

    2. Sljedeće dozvole u 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. Kreirajte Key Vault + ključ

Ako ga već nemate, kreirajte novi Key Vault u istoj pretplati u kojoj ste upravo kreirali svoju prilagođenu ulogu.

U tom Key Vaultu kreirajte novi ključ:

  1. Idite na Key Vault -> Objects -> Keys, zatim kliknite Generate/Import

  2. U odjeljku Options odaberite Generate

Azure Key Vault Keys page with Generate/Import highlighted to add a key
  1. Odaberite RSA kao algoritam šifriranja.

  2. Možete odabrati bilo koju veličinu RSA ključa

  3. Unesite naziv ključa u sljedećem formatu: <org-xxx>--<any_name>, gdje je org-xxx ID vaše OpenAI organizacije koji možete pronaći na https://platform.openai.com/settings/organization/general

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

Ako ne možete pregledati ili kreirati ključ, provjerite imate li ulogu Key Vault Administrator. Ovo je potrebno čak i ako imate ulogu Owner. Da biste dobili dodijeljenu ulogu:

  1. Idite na Key Vault -> Access Control (IAM)

  2. Kliknite na Add -> Add role assignment

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

4. Kreirajte dodjelu uloge za OpenAI principal usluge + novi prilagođeni KMS + novi ključ

  1. Idite na Key Vault -> Objects -> Keys, zatim kliknite na red za ključ koji ste kreirali

  2. Idite na Access control (IAM) za svoj ključ na koji ste upravo kliknuli (ne za svoj Key Vault).

  3. U padajućem izborniku + Add odaberite Add role assignment

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment
  1. Na kartici Role odaberite naziv prilagođene uloge koju ste upravo kreirali.

Azure role list filtered for openai- with the openai-azure-kms-role entry
  1. Na kartici Members:

    1. Kliknite na „+ Select members“

    2. Unesite „ekm -“ u traku za pretraživanje; zatim bi se trebao učitati OpenAI principal usluge koji ste kreirali u 1. koraku

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

5. Primijenite sva dodatna ograničenja u skladu s vlastitim sigurnosnim praksama

Gore su navedene minimalne potrebne informacije koje OpenAI treba za postavljanje EKM-a. Možete primijeniti dodatne politike ključeva ili ograničenja u skladu s vlastitim internim sigurnosnim praksama, sve dok OpenAI može pozivati operacije šifriranja i dešifriranja na vašem KMS-u. Kada pozovete krajnju tačku za registraciju ključa kod OpenAI-a koja je opisana u nastavku, provjerit ćemo vaše postavke.

Nakon što dovršite gore navedene korake

ChatGPT Enterprise

Obratite se svom OpenAI kontaktu i podijelite sljedeće:

  • "tenant_id": "<YOUR_AZURE_TENANT_UUID>"

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

  • "key_name": "<YOUR_KEY_NAME>"

  • Naziv glavnog ključa za Azure Key Vault kojim upravljate

  • Naziv ključa mora biti u obliku <org-xxx>--<any_name>, gdje je org-xxx ID vaše OpenAI organizacije koji možete pronaći na https://platform.openai.com/settings/organization/general

Omogućit ćemo EKM za vašu ChatGPT organizaciju/radni prostor.

API

Registrirajte svoj vanjski ključ kod OpenAI-a

Slijedite upute u ovoj API referenci Vanjski ključevi u Management API-ju

  • Prvo registrirajte svoj vanjski ključ na nivou OpenAI organizacije, čime će se generirati ID vanjskog ključa u obliku extkey_xxx

  • U ovom koraku provjerit ćemo da je vaš unos važeći i da se možemo autentificirati na vaš KMS.

  • Ovo još neće dodati EKM u vaš 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>"
}'
  • Zatim kreirajte OpenAI projekt povezan s vanjskim ključem. Nakon toga, EKM je aktiviran na vašem projektu.

  • Tijelo odgovora ovog API poziva dat će vam ID projekta (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"
}'

Da li je ovaj članak bio koristan?