Prezentare generală
Enterprise Key Management (EKM) permite OpenAI să cripteze date folosind o cheie principală pe care o controlați. Acest document arată cum să vă configurați contul AWS pentru a acorda OpenAI permisiuni limitate pe KMS-ul dvs.

Pași
1. Creează o cheie KMS nouă
Accesează KMS > Chei gestionate de client, apoi selectează Creează o cheie.
Selectează un algoritm de criptare simetrică.
După crearea cheii, notează ARN-ul acesteia. Formatele acceptate includ
arn:aws:kms:<region>:<account_number>:key/<uuid>,...:key/mrk-*sau...:alias/<alias_name>.

2. Creează o politică personalizată pentru acces limitat la cheia KMS
Accesează IAM > Politici, apoi selectează Creează o politică.
La pasul Specifică permisiunile, selectează JSON și introdu codul de mai jos pentru a permite acțiunile de acces la KMS prin această politică. Asigură-te că înlocuiești YOUR_KMS_ARN cu ARN-ul cheii pe care ai creat-o.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": "<YOUR_KMS_ARN>"
}
]
}3. Creează un rol IAM pe care OpenAI să îl poată asuma și asociază-l cu politica de acces limitat la KMS
OpenAI va apela AssumeRole dintr-un cont AWS deținut de OpenAI. Acest pas permite entității principale AWS a OpenAI să își asume rolul cu permisiuni limitate pentru accesarea serviciului tău KMS.
Accesează IAM > Roluri, apoi selectează Creează un rol.
La pasul Selectează o entitate de încredere, selectează Politică de încredere personalizată.

Apoi, introdu codul de mai jos în Politică de încredere personalizată pentru a permite accesul entității principale AWS a OpenAI.
Entitatea principală este entitatea principală AWS a OpenAI:
arn:aws:iam::790389265272:role/EnterpriseKeyManagement.Specifică valoarea ExternalId pe care OpenAI trebuie să o transmită în timpul procesului
AssumeRole.Pentru ChatGPT sau API, folosește valoarea ID organizație (org-xxx) asociată spațiului tău de lucru: setările organizației.
Pentru API, poți folosi un anumit ID de proiect API pentru un control mai detaliat.
{
"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>"
]
}
}
}
]
}Apoi, la pasul Adaugă permisiuni, caută numele politicii IAM pe care ai creat-o la pasul anterior. Bifează caseta de lângă numele politicii, apoi selectează Înainte.

La final, în secțiunea Denumire, verificare și creare, alege un nume pentru rol.
4. Aplicați orice restricții suplimentare în conformitate cu propriile practici de securitate
Mai sus se află informațiile minime necesare de care OpenAI are nevoie pentru a configura EKM. Sunteți liber să aplicați politici de chei sau restricții suplimentare în conformitate cu propriile practici interne de securitate, atât timp cât OpenAI poate apela operațiuni de criptare și decriptare pe KMS-ul dvs. Când apelați punctul final de înregistrare a cheii cu OpenAI descris mai jos, vă vom valida configurarea.
După parcurgerea pașilor de mai sus
ChatGPT Enterprise
Vă rugăm să contactați persoana dvs. de contact de la OpenAI și să partajați următoarele:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"ARN-ul rolului pe care OpenAI îl va asuma în cloudul dvs.
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"ARN-ul Key Management System pentru cheia principală pe care o gestionați.
Vom activa EKM pentru organizația/spațiul dvs. de lucru ChatGPT.
API
Înregistrează cheia externă la OpenAI
Urmează instrucțiunile din această documentație de referință API: Cheile externe în API-ul de gestionare.
Mai întâi, înregistrează cheia externă la nivelul organizației OpenAI. Astfel, se va genera un ID de cheie externă.
La acest pas, vom verifica dacă datele introduse sunt valide și dacă ne putem autentifica la serviciul tău KMS.
Acest pas nu va activa încă EKM pentru proiectul tău 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>"
}'Apoi, creați un proiect OpenAI asociat cu cheia externă. După aceasta, EKM este activat în proiectul dvs. Corpul răspunsului acestui apel API vă va oferi ID-ul proiectului (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"
}'