OpenAI
Šis puslapis buvo išverstas mašininiu būdu. Peržiūrėti originalų straipsnį anglų kalba.

OpenAI / Azure EKM integracijos instrukcijos

Nuoseklios Azure parengimo ir EKM aktyvinimo instrukcijos

Atnaujinta: 11 days ago

Apžvalga

Enterprise Key Management (EKM) leidžia OpenAI šifruoti duomenis naudojant jūsų valdomą pagrindinį raktą. Kad OpenAI galėtų iškviesti šifravimo / iššifravimo operacijas jūsų Key Vault, mums reikės suteikti prieigą. Šiame dokumente parodoma, kaip nustatyti „Azure“ paskyrą, kad OpenAI galėtų prisiimti vaidmenį su Key Vault leidimais.

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

Veiksmai

1. Sukurkite OpenAI paslaugos pagrindinį objektą savo paskyroje

  1. Gaukite prieigos žetoną

az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID
  1. Sukurkite paslaugos pagrindinį objektą – toliau pateiktoje užklausoje appId yra OpenAI programos kliento ID. Taip bus sukurtas pagrindinis objektas, kurio rodomas pavadinimas „EKM - OpenAI Azure“ – prisiminkite jį vėlesniems veiksmams.

OpenAI / Azure EKM integravimo instrukcijos – sukurkite paslaugos pagrindinį objektą

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. Sukurkite pasirinktinį vaidmenį ribotai KMS prieigai

  1. Eikite į Subscriptions -> Access Control (IAM)

  2. Išskleidžiamajame meniu + Add pasirinkite Add custom role

  3. Eikite į skirtuką JSON, spustelėkite „Edit“ ir pridėkite:

    1. Bet koks vaidmens pavadinimas – prisiminkite pasirinktą pavadinimą

    2. Toliau nurodyti leidimai skiltyje 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. Sukurkite „Key Vault“ ir raktą

Jei jos dar neturite, sukurkite naują Key Vault toje pačioje prenumeratoje, kurioje ką tik sukūrėte pasirinktinį vaidmenį.

Tame Key Vault sukurkite naują raktą:

  1. Eikite į Key Vault -> Objects -> Keys, tada spustelėkite Generate/Import

  2. Skiltyje Options pasirinkite Generate

Azure Key Vault Keys page with Generate/Import highlighted to add a key
  1. Šifravimo algoritmui pasirinkite RSA.

  2. Galite pasirinkti bet kokį RSA rakto dydį

  3. Pateikite rakto pavadinimą tokiu formatu: <org-xxx>--<any_name>, kur org-xxx yra jūsų OpenAI organizacijos ID, kurį galite rasti adresu https://platform.openai.com/settings/organization/general

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

Jei negalite peržiūrėti ar sukurti rakto, įsitikinkite, kad turite vaidmenį Key Vault Administrator. To reikia net jei turite Owner vaidmenį. Kad vaidmuo būtų priskirtas:

  1. Eikite į Key Vault -> Access Control (IAM)

  2. Spustelėkite Add -> Add role assignment

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

4. Sukurkite vaidmens priskyrimą OpenAI paslaugos pagrindiniam objektui + naujam pasirinktiniam KMS + naujam raktui

  1. Eikite į Key Vault -> Objects -> Keys, tada spustelėkite sukurto rakto eilutę

  2. Eikite į ką tik spustelėto rakto skiltį Access control (IAM) (ne savo raktų saugyklos).

  3. Išskleidžiamajame meniu + Add pasirinkite Add role assignment

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment
  1. Skirtuke Role pasirinkite ką tik sukurto pasirinktinio vaidmens pavadinimą.

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

    1. Spustelėkite „+ Select members“

    2. Paieškos juostoje įveskite „ekm -“, tada turėtų būti įkeltas 1 veiksme sukurtas OpenAI paslaugos pagrindinis objektas

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

5. Taikykite bet kokius papildomus apribojimus pagal savo saugos praktiką

Aukščiau pateikta minimali būtina informacija, kurios OpenAI reikia EKM nustatyti. Galite laisvai taikyti papildomas raktų politikas ar apribojimus pagal savo vidinę saugos praktiką, jei OpenAI gali iškviesti šifravimo ir iššifravimo operacijas jūsų KMS. Kai iškviesite toliau aprašytą OpenAI rakto registravimo prieigos tašką, patikrinsime jūsų sąranką.

Atlikę pirmiau nurodytus veiksmus

ChatGPT Enterprise

Susisiekite su savo OpenAI kontaktiniu asmeniu ir pasidalykite šia informacija:

  • "tenant_id": "<YOUR_AZURE_TENANT_UUID>"

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

  • "key_name": "<YOUR_KEY_NAME>"

  • Jūsų valdomo „Azure Key Vault“ pagrindinio rakto pavadinimas

  • Rakto pavadinimas turi būti formos <org-xxx>--<any_name>, kur org-xxx yra jūsų OpenAI organizacijos ID, kurį galite rasti adresu https://platform.openai.com/settings/organization/general

Įjungsime EKM jūsų ChatGPT organizacijoje / darbo erdvėje.

API

Užregistruokite savo išorinį raktą OpenAI

Vadovaukitės šios API nuorodos instrukcijomis Išoriniai raktai valdymo API

  • Pirmiausia užregistruokite savo išorinį raktą OpenAI organizacijos lygiu; bus sugeneruotas išorinio rakto ID formos extkey_xxx

  • Šiame veiksme patikrinsime, ar jūsų įvestis galioja ir ar galime autentifikuotis jūsų KMS.

  • Tai dar nepridės EKM prie jūsų OpenAI projekto.

# 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>"
}'
  • Tada sukurkite OpenAI projektą, susietą su išoriniu raktu. Po to EKM bus aktyvinta jūsų projekte.

  • Šio API iškvietimo atsakymo tekstas pateiks projekto 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"
}'

Ar šis straipsnis buvo naudingas?