Visió general
Enterprise Key Management (EKM) permet a OpenAI xifrar dades mitjançant una clau mestra que controleu. Aquest document mostra com configurar el vostre compte de GCP per concedir a OpenAI permisos limitats al vostre KMS.

Passos
1. Creeu una identitat federada per a OpenAI
OpenAI emetrà un segment d'identitat des d'un compte de GCP propietat d'OpenAI que té un aspecte semblant a aquest.
L'azp i el sub són l'ID del compte de servei d'OpenAI a GCP
L'aud és l'ID de la vostra organització d'OpenAI. També podeu triar una altra audiència, com ara l'ID del vostre projecte d'OpenAI; vegeu les instruccions següents
{
"aud": "org-xxxx",
"azp": "105900137572174660365",
"exp": 1747876928,
"iat": 1747873328,
"iss": "https://accounts.google.com",
"sub": "105900137572174660365"
}Aquest pas reconeix les declaracions fetes per aquest segment d'identitat i permet que el vostre STS de GCP emeti un segment d'accés quan se subministri aquest segment d'identitat.
Aneu a IAM i administració -> Federació d'identitats de càrrega de treball i feu clic a Crea un grup

Al pas Crea un grup d'identitats, introduïu qualsevol cosa com a nom del grup.
Al pas Afegeix un proveïdor al grup:
A Selecciona un proveïdor, seleccioneu OpenID Connect (OIDC)
Introduïu qualsevol cosa com a nom del proveïdor.
A la secció Emissor (URL), introduïu https://accounts.google.com
A la secció Audiències
Seleccioneu Audiències permeses
Introduïu l'audiència que OpenAI ha d'indicar quan us passem un segment.
Per a ChatGPT o l'API: podeu posar l'ID d'organització de l'API d'OpenAI (org-xxx)
Per a l'API: podeu posar un ID de projecte de l'API específic per tenir més granularitat.

A la secció Assignació d'atributs
per a google.subject, introduïu assertion.sub

A la secció Condicions dels atributs
Ara hauríeu de veure el vostre grup d'identitats de càrrega de treball i el vostre proveïdor d'identitats de càrrega de treball llistats a la pàgina https://console.cloud.google.com/iam-admin/workload-identity-pools
ID del grup d'identitats de càrrega de treball

ID del proveïdor d'identitats de càrrega de treball

2. Assegureu-vos que KMS estigui activat
Aneu a https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview per activar KMS. No cal que creeu el vostre KMS al mateix projecte de GCP on heu reconegut la identitat federada d'OpenAI; tanmateix, si els projectes són diferents, el producte KMS ha d'estar com a mínim activat en tots dos projectes.
3. Creeu una clau KMS nova
Aneu a Seguretat -> Protecció de dades > Gestió de claus
A la pestanya Visió general, feu clic a Crea un anell de claus
Trieu qualsevol nom per al vostre anell de claus
Per a Finalitat i algorisme, seleccioneu Xifratge/desxifratge simètric

Un cop hàgiu creat un anell de claus, hauria d'aparèixer a la pestanya Anells de claus. Feu clic a l'anell de claus.
Als detalls de l'anell de claus, feu clic a Crea una clau
Trieu qualsevol nom per a la vostra clau
4. Creeu un rol limitat per a les operacions de xifratge/desxifratge al KMS
Aneu a IAM i administració -> Rols -> Crea un rol
Introduïu qualsevol cosa com a títol i ID del rol
Feu clic a Afegeix permisos i, a continuació, afegiu el següent
cloudkms.cryptoKeyVersions.useToDecrypt
cloudkms.cryptoKeyVersions.useToEncrypt
5. Assigneu la identitat federada d'OpenAI al rol limitat de KMS per a les operacions de xifratge/desxifratge
Aneu a Seguretat -> Protecció de dades > Gestió de claus
Feu clic al nom del vostre anell de claus i, a continuació, feu clic al nom de la clau per anar a la pàgina de detalls de la clau.
Feu clic a la pestanya Permisos i, a continuació, feu clic al botó Concedeix accés

Assigneu la identitat federada d'OpenAI al rol personalitzat que heu creat anteriorment
A la secció Afegeix principals, introduïu principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365
A la secció Assigna rols, seleccioneu el rol personalitzat que heu creat al pas anterior per als permisos limitats d'EKM
6. Apliqueu qualsevol restricció addicional d'acord amb les vostres pràctiques de seguretat
El que s'ha indicat més amunt és la informació mínima necessària que OpenAI necessita per configurar EKM. Podeu aplicar polítiques de claus o restriccions addicionals d'acord amb les vostres pràctiques de seguretat internes, sempre que OpenAI pugui cridar operacions de xifratge i desxifratge al vostre KMS. Quan crideu el punt final de registre de claus amb OpenAI que es descriu a continuació, validarem la vostra configuració.
Després de completar els passos anteriors
ChatGPT Enterprise
Poseu-vos en contacte amb la vostra persona de contacte d'OpenAI i compartiu el següent:
"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"
La regió on es troba la clau mestra del vostre sistema de gestió de claus
Activarem EKM per a la vostra organització/espai de treball de ChatGPT.
API
Registreu la vostra clau externa amb OpenAI
Seguiu les instruccions d'aquesta referència de l'API: Claus externes a l'API de gestió
Primer, registreu la vostra clau externa al nivell de l'organització d'OpenAI, cosa que generarà un ID de clau externa.
En aquest pas, validarem la vostra configuració a GCP comprovant que ens podem autenticar al vostre KMS.
Això encara no afegirà EKM al vostre projecte d'OpenAI.
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": <el teu identificador d'organització o identificador de projecte>,
"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"
}'A continuació, creeu un projecte d'OpenAI associat a la clau externa. Després d'això, l'EKM s'activa al vostre projecte.
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"
}'