Visió general
Enterprise Key Management (EKM) permet a OpenAI xifrar dades amb una clau mestra que controleu. Aquest document mostra com configurar el vostre compte d’AWS per concedir a OpenAI permisos limitats al vostre KMS.

Passos
1. Crea una clau KMS nova
Ves a KMS > Claus gestionades pel client i selecciona Crea una clau.
Selecciona un algorisme de xifratge simètric.
Un cop creada la clau, anota'n l'ARN. Els formats compatibles inclouen
arn:aws:kms:<region>:<account_number>:key/<uuid>,...:key/mrk-*o...:alias/<alias_name>.

2. Crea una política personalitzada d'accés limitat a la clau KMS
Ves a IAM > Polítiques i selecciona Crea una política.
Al pas Especifica els permisos, selecciona JSON i introdueix el contingut següent per afegir les accions d'accés a KMS a la política. Assegura't de substituir YOUR_KMS_ARN per l'ARN de la clau que has creat.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": "<YOUR_KMS_ARN>"
}
]
}3. Crea un rol IAM que OpenAI pugui assumir i associa'l a la política d'accés limitat al teu KMS
OpenAI cridarà AssumeRole des d'un compte d'AWS propietat d'OpenAI. Aquest pas permet que l'entitat principal d'AWS d'OpenAI assumeixi el rol limitat per accedir al teu KMS.
Ves a IAM > Rols i selecciona Crea un rol.
Al pas Selecciona una entitat de confiança, selecciona Política de confiança personalitzada.

A continuació, introdueix el contingut següent a Política de confiança personalitzada per permetre l'accés a l'entitat principal d'AWS d'OpenAI.
L'entitat principal és la d'AWS d'OpenAI:
arn:aws:iam::790389265272:role/EnterpriseKeyManagement.Indica quin ExternalId ha de passar OpenAI durant el procés
AssumeRole.Per a ChatGPT o l'API, fes servir l'ID d'organització (org-xxx) associat al teu espai de treball: configuració de l'organització.
Per a l'API, pots fer servir un ID de projecte de l'API específic per tenir un control més detallat.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::790389265272:role/EnterpriseKeyManagement"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": [
"<YOUR_OPENAI_ORGANIZATION_ID>"
]
}
}
}
]
}A continuació, al pas Afegeix permisos, cerca el nom de la política IAM que has creat al pas anterior. Marca la casella de selecció que hi ha al costat del nom de la política i selecciona Següent.

Finalment, a la secció Anomena, revisa i crea, tria el nom que vulguis per al rol.
4. Apliqueu qualsevol restricció addicional d’acord amb les vostres pràctiques de seguretat
A dalt hi ha 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 el vostre contacte d’OpenAI i compartiu el següent:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"L’ARN del rol que OpenAI assumirà al vostre núvol.
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"L’ARN del Key Management System per a la clau mestra que gestioneu.
Activarem EKM per a la vostra organització o espai de treball de ChatGPT.
API
Registra la teva clau externa a OpenAI
Segueix les instruccions d'aquesta documentació de referència de l'API: Claus externes a l'API de gestió.
Primer, registra la teva clau externa a escala d'organització d'OpenAI. Això generarà un ID de clau externa.
En aquest pas, comprovarem que les dades introduïdes siguin vàlides i que ens puguem autenticar al teu KMS.
Això encara no afegirà EKM al teu 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": "aws",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>",
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>",
"external_id": "<your org id or project id>"
}'A continuació, creeu un projecte d’OpenAI associat a la clau externa. Després d’això, EKM s’activa al vostre projecte. El cos de la resposta d’aquesta crida a l’API us donarà l’ID del projecte (proj_xxx).
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"
}'