Pregled
Enterprise Key Management (EKM) omogućava OpenAI-u da šifrira podatke pomoću glavnog ključa kojim vi upravljate. Ovaj dokument pokazuje kako podesiti vaš AWS račun da OpenAI-u date ograničene dozvole na vašem KMS-u.

Koraci
1. Kreirajte novi KMS ključ
Idite na KMS -> Customer managed keys, zatim kliknite Create Key.
Odaberite simetrični algoritam šifriranja.
Nakon što se ključ kreira, zabilježite njegov ARN. Podržani formati uključuju
arn:aws:kms:<region>:<account_number>:key/<uuid>,...:key/mrk-*ili...:alias/<alias_name>.

2. Kreirajte prilagođenu politiku za ograničen pristup KMS ključu
Idite na IAM -> Policies, zatim kliknite Create Policy.
U koraku Specify permissions odaberite JSON i unesite sljedeće kako biste politici dali KMS radnje pristupa. Obavezno zamijenite YOUR_KMS_ARN ARN-om ključa koji ste kreirali.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": <YOUR_KMS_ARN>
}
]
}3. Kreirajte IAM ulogu koju OpenAI može preuzeti i dodijelite joj politiku s ograničenim pristupom vašem KMS-u
OpenAI će pozvati AssumeRole s AWS računa u vlasništvu OpenAI-a. Ovaj korak omogućava AWS principalu OpenAI-a da preuzme ograničenu ulogu za pristup vašem KMS-u.
Idite na IAM -> Roles, zatim kliknite Create Role.
U koraku Select trusted entity odaberite Custom trust policy.

Zatim unesite sljedeće u Custom trust policy kako biste omogućili pristup AWS principalu OpenAI-a.
Principal je AWS principal OpenAI-a:
arn:aws:iam::790389265272:role/EnterpriseKeyManagement.Navedite koji ExternalId OpenAI treba proslijediti tokom procesa
AssumeRole.Za ChatGPT ili API koristite ID organizacije (org-xxx) povezan s vašim radnim prostorom: https://platform.api.openai.org/settings/organization/general.
Za API možete koristiti određeni ID API projekta za veću granularnost.
{
"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>,
]
}
}
}
]
}Zatim, u koraku Add permissions, potražite naziv IAM politike koju ste kreirali u prethodnom koraku. Kliknite potvrdni okvir pored naziva politike, zatim kliknite Next.

Na kraju, u odjeljku Name, review, and create, odaberite bilo koji naziv uloge.
4. Primijenite sva dodatna ograničenja u skladu s vlastitim sigurnosnim praksama
Iznad su navedene minimalne potrebne informacije koje su OpenAI-u potrebne za podešavanje EKM-a. Možete primijeniti dodatne politike ključeva ili ograničenja u skladu s vlastitim internim sigurnosnim praksama, sve dok OpenAI može pozivati operacije šifriranja i dešifriranja na vašem KMS-u. Kada pozovete krajnju tačku za registraciju ključa kod OpenAI-a, opisanu u nastavku, provjerit ćemo vašu konfiguraciju.
Nakon dovršetka gore navedenih koraka
ChatGPT Enterprise
Obratite se svom OpenAI kontaktu i podijelite sljedeće:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"ARN uloge koju će OpenAI preuzeti u vašem oblaku.
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"ARN sistema za upravljanje ključevima za glavni ključ kojim upravljate.
Omogućit ćemo EKM za vašu ChatGPT organizaciju/radni prostor.
API
Registrujte svoj vanjski ključ kod OpenAI-a
Slijedite upute u ovoj API referenci: Vanjski ključevi u Management API-ju.
Prvo registrujte svoj vanjski ključ na nivou OpenAI organizacije, čime će se generisati ID vanjskog ključa.
U ovom koraku ćemo provjeriti da li je vaš unos važeći i da li se možemo autentificirati prema vašem KMS-u.
Time se EKM još neće dodati vašem OpenAI projektu.
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 konfiguracija",
"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": <vaš org id ili project id>
}'Zatim kreirajte OpenAI projekt povezan s vanjskim ključem. Nakon toga, EKM je aktiviran na vašem projektu. Tijelo odgovora ovog API poziva dat će vam ID projekta (proj_xxx).
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "Neki projekt",
"external_key_id": "extkey_xxxx"
}'