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

OpenAI / GCP EKM integravimo instrukcijos

Nuoseklios instrukcijos, kaip parengti GCP ir suaktyvinti EKM

Atnaujinta: 11 days ago

Apžvalga

Įmonės raktų valdymas (EKM) leidžia OpenAI šifruoti duomenis naudojant jūsų valdomą pagrindinį raktą. Šiame dokumente parodyta, kaip nustatyti GCP paskyrą, kad OpenAI būtų suteikti riboti leidimai jūsų KMS.

Diagram of OpenAI GCP EKM integration flow using STS token exchange and KMS encrypt or decrypt requests

Veiksmai

1. Sukurkite OpenAI federuotąją tapatybę

OpenAI iš OpenAI priklausančios GCP paskyros išduos tapatybės žetoną, kuris atrodys maždaug taip.

  • azp ir sub yra OpenAI paslaugos paskyros ID GCP

  • aud yra jūsų OpenAI organizacijos ID. Taip pat galite pasirinkti kitą auditoriją, pvz., savo OpenAI projekto ID – žr. toliau pateiktas instrukcijas

{
  "aud": "org-xxxx",
  "azp": "105900137572174660365",
  "exp": 1747876928,
  "iat": 1747873328,
  "iss": "https://accounts.google.com",
  "sub": "105900137572174660365"
}

Šiame veiksme atpažįstami to tapatybės žetono teiginiai ir jūsų GCP STS gali išduoti prieigos žetoną, kai pateikiamas tas tapatybės žetonas.

  1. Eikite į IAM & Admin -> Workload Identity Federation ir spustelėkite Create Pool

GCP IAM & Admin with Workload Identity Federation selected
  1. Veiksme Create an identity pool, įveskite bet ką kaip telkinio pavadinimą.

  1. Veiksme Add a provider to pool:

  1. Lauke Select a provider pasirinkite OpenID Connect (OIDC)

  2. Įveskite bet ką kaip teikėjo pavadinimą.

  3. Skiltyje Issuer (URL) įveskite https://accounts.google.com

  4. Skiltyje Audiences

  1. Pasirinkite Allowed audiences

  2. Įveskite auditoriją, kurią OpenAI turėtų nurodyti, kai perduodame jums žetoną.

  1. ChatGPT arba API: galite įvesti OpenAI API organizacijos ID (org-xxx)

  2. API atveju galite įvesti konkretų API projekto ID, kad būtų daugiau detalumo.

GCP Workload Identity Provider edit page with Allowed audiences selected and Audience 1 entered
  1. Skiltyje Attribute mapping

  1. laukui google.subject įveskite assertion.sub

Google Cloud attribute mapping with Google 1 google.subject mapped to OIDC 1 assertion.sub
  1. Skiltyje Attribute conditions

  1. Dabar puslapyje https://console.cloud.google.com/iam-admin/workload-identity-pools turėtumėte matyti savo darbo krūvio tapatybės telkinį ir darbo krūvio tapatybės teikėją

  1. Workload identity pool ID

GCP Workload Identity Pools page highlighting the provider ID value needed for OpenAI EKM setup
  1. Workload identity provider ID

GCP Workload Identity Provider edit page with the provider ID field highlighted

2. Įsitikinkite, kad KMS įjungtas

Eikite į https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview, kad įjungtumėte KMS. Nebūtina kurti KMS tame pačiame GCP projekte, kuriame atpažinote OpenAI federuotąją tapatybę; tačiau, jei projektai skiriasi, KMS produktas turi būti bent jau įjungtas abiejuose projektuose.

3. Sukurkite naują KMS raktą

  1. Eikite į Security -> Data Protection > Key Management

  2. Skirtuke Overview spustelėkite Create key ring

  1. Pasirinkite bet kokį raktų žiedo pavadinimą

  2. Laukui Purpose and algorithm pasirinkite Symmetric encrypt/decrypt

GCP Key Management Overview page with the Create Key Ring button highlighted
  1. Sukūrus raktų žiedą, jis turėtų būti rodomas skirtuke Key Rings. Spustelėkite raktų žiedą.

  2. Raktų žiedo informacijoje spustelėkite Create Key

  1. Pasirinkite bet kokį rakto pavadinimą

4. Sukurkite ribotą vaidmenį KMS šifravimo / iššifravimo operacijoms

  1. Eikite į IAM & Admin -> Roles -> Create role

  2. Įveskite bet kokį vaidmens pavadinimą ir ID

  3. Spustelėkite Add Permissions, tada pridėkite toliau nurodytus leidimus

  1. cloudkms.cryptoKeyVersions.useToDecrypt

  2. cloudkms.cryptoKeyVersions.useToEncrypt

5. Priskirkite OpenAI federuotąją tapatybę ribotam KMS vaidmeniui šifravimo / iššifravimo operacijoms

  1. Eikite į Security -> Data Protection > Key Management

  2. Spustelėkite savo raktų žiedo pavadinimą, tada spustelėkite savo rakto pavadinimą, kad patektumėte į rakto informacijos puslapį.

  1. Spustelėkite skirtuką Permissions, tada spustelėkite mygtuką Grant Access

Google Cloud KMS key details page with Permissions tab open and Grant Access highlighted
  1. Priskirkite OpenAI federuotąją tapatybę anksčiau sukurtam pasirinktiniam vaidmeniui

  1. Skiltyje Add principals įveskite principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365

  1. Skiltyje Assign roles pasirinkite ankstesniame veiksme sukurtą pasirinktinį vaidmenį, skirtą ribotiems EKM leidimams

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

Pirmiau pateikta mažiausia reikalinga informacija, kurios OpenAI reikia EKM nustatyti. Galite taikyti papildomas raktų politikas ar apribojimus pagal savo vidinę saugos praktiką, jei OpenAI gali kviesti šifravimo ir iššifravimo operacijas jūsų KMS. Kai iškviesite toliau aprašytą rakto registravimo prieigos tašką su OpenAI, patvirtinsime jūsų sąranką.

Atlikus pirmiau nurodytus veiksmus

ChatGPT Enterprise

Susisiekite su savo OpenAI kontaktiniu asmeniu ir pasidalykite toliau nurodyta informacija:

  • "workload_identity_project_number": "123456789012",

  • "workload_identity_pool_id": "openai-azure",

  • "workload_identity_provider_id": "openai-ekm-service-role",

  • "kms_project_id": "adjective-noun-12345",

  • "kms_key_name": "openai-kms-key",

  • "kms_key_ring_name": "openai-kms-key-ring",

  • "kms_key_location": "us-east1"

  • Regionas, kuriame yra jūsų raktų valdymo sistemos pagrindinis raktas

Įjungsime EKM jūsų ChatGPT organizacijai / darbo erdvei.

API

Užregistruokite savo išorinį raktą OpenAI

Vadovaukitės instrukcijomis šioje API nuorodoje External Keys in the Management API

  • Pirmiausia užregistruokite išorinį raktą OpenAI organizacijos lygiu, ir bus sugeneruotas išorinio rakto ID.

  • Šiame veiksme patvirtinsime jūsų GCP sąranką patikrindami, ar galime autentifikuotis jūsų KMS.

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

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
   "type": "gcp",
   "name": "GCP EKM Config",
   "workload_identity_project_number": "123456789012",
   "workload_identity_pool_id": "openai-azure",
   "workload_identity_provider_id": "openai-ekm-service-role",
   "audience": <jūsų organizacijos ID arba projekto ID>,
   "kms_project_id": "adjective-noun-12345",
   "kms_key_name": "openai-kms-key",
   "kms_key_ring_name": "openai-kms-key-ring",
   "kms_key_location": "us-east1"
}'

Tada sukurkite OpenAI projektą, susietą su išoriniu raktu. Po to EKM bus suaktyvintas jūsų projekte.

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?