OpenAI
Denne side er maskinoversat. Se den originale engelske artikel.

OpenAI / GCP EKM-integrationsvejledning

Trinvis vejledning til at klargøre GCP og aktivere EKM

Opdateret: 15 days ago

Oversigt

Enterprise Key Management (EKM) gør det muligt for OpenAI at kryptere data ved hjælp af en hovednøgle, som du kontrollerer. Dette dokument viser, hvordan du konfigurerer din GCP-konto, så OpenAI får begrænsede tilladelser til din KMS.

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

Trin

1. Opret en fødereret identitet for OpenAI

OpenAI udsteder et identitetstoken fra en GCP-konto, der ejes af OpenAI, og som ser nogenlunde sådan ud.

  • azp og sub er OpenAIs tjenestekonto-id i GCP

  • aud er dit OpenAI-organisations-id. Du kan også vælge en anden målgruppe, f.eks. dit OpenAI-projekt-id – se vejledningen nedenfor

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

Dette trin genkender de claims, som identitetstokenet fremsætter, og gør det muligt for din GCP STS at udstede et adgangstoken, når dette identitetstoken leveres.

  1. Gå til IAM & Admin -> Workload Identity Federation , og klik på Opret pool

GCP IAM & Admin with Workload Identity Federation selected
  1. I trinnet Opret en identitetspool, skal du angive hvad som helst som poolnavn.

  1. I trinnet Føj en udbyder til poolen:

  1. Under Vælg en udbyder skal du vælge OpenID Connect (OIDC)

  2. Angiv hvad som helst som udbydernavn.

  3. I afsnittet Udsteder (URL) skal du angive https://accounts.google.com

  4. I afsnittet Målgrupper

  1. Vælg Tilladte målgrupper

  2. Angiv den målgruppe, som OpenAI skal angive, når vi sender dig et token.

  1. For ChatGPT eller API: Du kan angive OpenAI API-organisations-id (org-xxx)

  2. For API: Du kan angive et specifikt API-projekt-id for større granularitet.

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

  1. for google.subject skal du angive assertion.sub

Google Cloud attribute mapping with Google 1 google.subject mapped to OIDC 1 assertion.sub
  1. I afsnittet Attributbetingelser

  1. Nu bør din workload identity-pool og workload identity-udbyder blive vist 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-udbyder-id

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

2. Sørg for, at KMS er aktiveret

Gå til https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview for at aktivere KMS. Du behøver ikke at oprette din KMS i det samme GCP-projekt, hvor du registrerede OpenAIs fødererede identitet. Hvis projekterne er forskellige, skal KMS-produktet dog som minimum være aktiveret i begge projekter.

3. Opret en ny KMS-nøgle

  1. Gå til Sikkerhed -> Databeskyttelse > Nøgleadministration

  2. Under fanen Oversigt skal du klikke på Opret nøglering

  1. Vælg et vilkårligt navn til din nøglering

  2. For Formål og algoritme skal du vælge Symmetrisk kryptering/dekryptering

GCP Key Management Overview page with the Create Key Ring button highlighted
  1. Når du har oprettet en nøglering, bør den blive vist på fanen Nøgleringe. Klik på nøgleringen.

  2. I nøgleringens detaljer skal du klikke på Opret nøgle

  1. Vælg et vilkårligt navn til din nøgle

4. Opret en begrænset rolle til krypterings-/dekrypteringshandlinger på KMS

  1. Gå til IAM & Admin -> Roller -> Opret rolle

  2. Angiv hvad som helst som rolletitel og -id

  3. Klik på Tilføj tilladelser, og tilføj derefter følgende

  1. cloudkms.cryptoKeyVersions.useToDecrypt

  2. cloudkms.cryptoKeyVersions.useToEncrypt

5. Tildel OpenAIs fødererede identitet til den begrænsede KMS-rolle til krypterings-/dekrypteringshandlinger

  1. Gå til Sikkerhed -> Databeskyttelse > Nøgleadministration

  2. Klik på navnet på din nøglering, og klik derefter på dit nøglenavn for at gå til siden med nøgledetaljer.

  1. Klik på fanen Tilladelser, og klik derefter på knappen Giv adgang

Google Cloud KMS key details page with Permissions tab open and Grant Access highlighted
  1. Tildel OpenAIs fødererede identitet til den tilpassede rolle, du tidligere har oprettet

  1. I afsnittet Tilføj principaler skal du angive principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365

  1. I afsnittet Tildel roller skal du vælge den tilpassede rolle, du oprettede i det foregående trin, til begrænsede EKM-tilladelser

6. Anvend eventuelle yderligere begrænsninger i overensstemmelse med din egen sikkerhedspraksis

Ovenstående er de minimumskrav til oplysninger, som OpenAI skal bruge for at konfigurere EKM. Du kan frit anvende yderligere nøglepolitikker eller begrænsninger i overensstemmelse med din egen interne sikkerhedspraksis, så længe OpenAI kan kalde krypterings- og dekrypteringshandlinger på din KMS. Når du kalder endepunktet til nøgleregistrering hos OpenAI, som er beskrevet nedenfor, validerer vi din opsætning.

Efter at have gennemført trinnene ovenfor

ChatGPT Enterprise

Kontakt din OpenAI-kontakt, 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"

  • Den region, hvor hovednøglen til dit Key Management System er placeret

Vi aktiverer EKM for din ChatGPT-organisation/dit arbejdsområde.

API

Registrer din eksterne nøgle hos OpenAI

Følg vejledningen i denne API-reference Eksterne nøgler i Management API

  • Registrer først din eksterne nøgle på OpenAI-organisationsniveau, hvilket genererer et eksternt nøgle-id.

  • I dette trin validerer vi din opsætning på GCP ved at kontrollere, at vi kan godkende os til din KMS.

  • Dette føjer endnu ikke EKM til dit OpenAI-projekt.

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-konfiguration",
   "workload_identity_project_number": "123456789012",
   "workload_identity_pool_id": "openai-azure",
   "workload_identity_provider_id": "openai-ekm-service-role",
   "audience": <dit org-id eller projekt-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"
}'

Opret derefter et OpenAI-projekt, der er knyttet til den eksterne nøgle. Herefter aktiveres EKM på dit projekt.

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

   "external_key_id": "extkey_xxxx"

}'

Var denne artikel nyttig?