OpenAI
Denne siden ble maskinoversatt. Se den opprinnelige engelske artikkelen.

OpenAI / GCP EKM-integrasjonsinstruksjoner

Trinnvise instruksjoner for å klargjøre GCP og aktivere EKM

Oppdatert: 3 days ago

Oversikt

Enterprise Key Management (EKM) gjør det mulig for OpenAI å kryptere data med en hovednøkkel du kontrollerer. Dette dokumentet viser hvordan du setter opp GCP-kontoen din for å gi OpenAI begrensede tillatelser på KMS-en din.

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

Trinn

1. Opprett en føderert identitet for OpenAI

OpenAI kommer til å utstede et identitetstoken fra en OpenAI-eid GCP-konto som ser omtrent slik ut.

  • azp og sub er OpenAIs tjenestekonto-ID i GCP

  • aud er OpenAI-organisasjons-ID-en din. Du kan også velge en annen målgruppe, for eksempel OpenAI-prosjekt-ID-en din – se instruksjonene nedenfor

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

Dette trinnet gjenkjenner påstandene i det identitetstokenet og gjør det mulig for GCP STS å utstede et tilgangstoken når det identitetstokenet oppgis.

  1. Gå til IAM & administrasjon -> Workload Identity Federation og klikk på Opprett pool

GCP IAM & Admin with Workload Identity Federation selected
  1. I trinnet Opprett en identitetspool, skriver du inn hva som helst for poolnavnet.

  1. I trinnet Legg til en leverandør i poolen:

  1. Under Velg en leverandør velger du OpenID Connect (OIDC)

  2. Skriv inn hva som helst for leverandørnavnet.

  3. I delen Utsteder (URL) skriver du inn https://accounts.google.com

  4. I delen Målgrupper

  1. Velg Tillatte målgrupper

  2. Skriv inn målgruppen OpenAI skal angi når vi sender deg et token.

  1. For ChatGPT eller API: Du kan angi OpenAI API-organisasjons-ID-en (org-xxx)

  2. For API: Du kan angi en bestemt API-prosjekt-ID for mer granularitet.

GCP Workload Identity Provider edit page with Allowed audiences selected and Audience 1 entered
  1. I delen Attributtilordning

  1. for google.subject skriver du inn assertion.sub

Google Cloud attribute mapping with Google 1 google.subject mapped to OIDC 1 assertion.sub
  1. I delen Attributtbetingelser

  1. Nå skal du se workload identity-poolen og workload identity-leverandøren oppført på siden https://console.cloud.google.com/iam-admin/workload-identity-pools

  1. Workload identity-pool-ID

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

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

2. Sørg for at KMS er aktivert

Gå til https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview for å aktivere KMS. Du trenger ikke å opprette KMS-en i samme GCP-prosjekt som der du registrerte OpenAIs fødererte identitet; men hvis prosjektene er ulike, må KMS-produktet i det minste være aktivert i begge prosjektene.

3. Opprett en ny KMS-nøkkel

  1. Gå til Sikkerhet -> Databeskyttelse > Nøkkelhåndtering

  2. Under fanen Oversikt klikker du på Opprett nøkkelring

  1. Velg et valgfritt navn for nøkkelringen din

  2. For formål og algoritme velger du Symmetrisk kryptering/dekryptering

GCP Key Management Overview page with the Create Key Ring button highlighted
  1. Når du har opprettet en nøkkelring, skal den vises i fanen Nøkkelringer. Klikk på nøkkelringen.

  2. I detaljene for nøkkelringen klikker du på Opprett nøkkel

  1. Velg et valgfritt navn for nøkkelen din

4. Opprett en begrenset rolle for krypterings-/dekrypteringsoperasjoner på KMS

  1. Gå til IAM & administrasjon -> Roller -> Opprett rolle

  2. Skriv inn hva som helst for rolletittel og ID

  3. Klikk på Legg til tillatelser, og legg deretter til følgende

  1. cloudkms.cryptoKeyVersions.useToDecrypt

  2. cloudkms.cryptoKeyVersions.useToEncrypt

5. Tildel OpenAIs fødererte identitet til den begrensede KMS-rollen for krypterings-/dekrypteringsoperasjoner

  1. Gå til Sikkerhet -> Databeskyttelse > Nøkkelhåndtering

  2. Klikk på navnet på nøkkelringen din, og klikk deretter på nøkkelnavnet ditt for å gå til siden med nøkkeldetaljer.

  1. Klikk på fanen Tillatelser, og klikk deretter på knappen Gi tilgang

Google Cloud KMS key details page with Permissions tab open and Grant Access highlighted
  1. Tildel OpenAIs fødererte identitet til den egendefinerte rollen du opprettet tidligere

  1. I delen Legg til prinsipaler skriver du inn principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365

  1. I delen Tildel roller velger du den egendefinerte rollen du opprettet i forrige trinn for begrensede EKM-tillatelser

6. Bruk eventuelle ytterligere begrensninger i tråd med egen sikkerhetspraksis

Ovenfor er den minstekrevde informasjonen OpenAI trenger for å sette opp EKM. Du står fritt til å bruke ytterligere nøkkelpolicyer eller begrensninger i tråd med din egen interne sikkerhetspraksis, så lenge OpenAI kan kalle krypterings- og dekrypteringsoperasjoner på KMS-en din. Når du kaller nøkkelregistreringsendepunktet hos OpenAI som beskrives nedenfor, validerer vi oppsettet ditt.

Etter at du har fullført trinnene ovenfor

ChatGPT Enterprise

Ta kontakt med OpenAI-kontakten din og del følgende:

  • "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"

  • Regionen der hovednøkkelen i Key Management System befinner seg

Vi aktiverer EKM for ChatGPT-organisasjonen/-arbeidsområdet ditt.

API

Registrer den eksterne nøkkelen din hos OpenAI

Følg instruksjonene i denne API-referansen Eksterne nøkler i Management API

  • Først registrerer du den eksterne nøkkelen din på OpenAI-organisasjonsnivå, noe som genererer en ekstern nøkkel-ID.

  • I dette trinnet validerer vi oppsettet ditt på GCP ved å kontrollere at vi kan autentisere mot KMS-en din.

  • Dette legger ikke til EKM i OpenAI-prosjektet ditt ennå.

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-konfigurasjon",
   "workload_identity_project_number": "123456789012",
   "workload_identity_pool_id": "openai-azure",
   "workload_identity_provider_id": "openai-ekm-service-role",
   "audience": <din org-ID eller prosjekt-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"
}'

Deretter oppretter du et OpenAI-prosjekt som er knyttet til den eksterne nøkkelen. Etter dette er EKM aktivert på prosjektet ditt.

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
   "name": "Et prosjekt",

   "external_key_id": "extkey_xxxx"

}'

Var denne artikkelen nyttig?