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.

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.
Gå til IAM & Admin -> Workload Identity Federation , og klik på Opret pool

I trinnet Opret en identitetspool, skal du angive hvad som helst som poolnavn.
I trinnet Føj en udbyder til poolen:
Under Vælg en udbyder skal du vælge OpenID Connect (OIDC)
Angiv hvad som helst som udbydernavn.
I afsnittet Udsteder (URL) skal du angive https://accounts.google.com
I afsnittet Målgrupper
Vælg Tilladte målgrupper
Angiv den målgruppe, som OpenAI skal angive, når vi sender dig et token.
For ChatGPT eller API: Du kan angive OpenAI API-organisations-id (org-xxx)
For API: Du kan angive et specifikt API-projekt-id for større granularitet.

I afsnittet Attributtilknytning
for google.subject skal du angive assertion.sub

I afsnittet Attributbetingelser
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
Workload identity-pool-id

Workload identity-udbyder-id

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
Gå til Sikkerhed -> Databeskyttelse > Nøgleadministration
Under fanen Oversigt skal du klikke på Opret nøglering
Vælg et vilkårligt navn til din nøglering
For Formål og algoritme skal du vælge Symmetrisk kryptering/dekryptering

Når du har oprettet en nøglering, bør den blive vist på fanen Nøgleringe. Klik på nøgleringen.
I nøgleringens detaljer skal du klikke på Opret nøgle
Vælg et vilkårligt navn til din nøgle
4. Opret en begrænset rolle til krypterings-/dekrypteringshandlinger på KMS
Gå til IAM & Admin -> Roller -> Opret rolle
Angiv hvad som helst som rolletitel og -id
Klik på Tilføj tilladelser, og tilføj derefter følgende
cloudkms.cryptoKeyVersions.useToDecrypt
cloudkms.cryptoKeyVersions.useToEncrypt
5. Tildel OpenAIs fødererede identitet til den begrænsede KMS-rolle til krypterings-/dekrypteringshandlinger
Gå til Sikkerhed -> Databeskyttelse > Nøgleadministration
Klik på navnet på din nøglering, og klik derefter på dit nøglenavn for at gå til siden med nøgledetaljer.
Klik på fanen Tilladelser, og klik derefter på knappen Giv adgang

Tildel OpenAIs fødererede identitet til den tilpassede rolle, du tidligere har oprettet
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
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"
}'