Overzicht
Met Enterprise Key Management (EKM) kan OpenAI gegevens versleutelen met een hoofdsleutel die jij beheert. Dit document laat zien hoe je je AWS-account instelt om OpenAI beperkte machtigingen voor je KMS te geven.

Stappen
1. Maak een nieuwe KMS-sleutel
Ga naar KMS -> Door klant beheerde sleutels en klik vervolgens op Sleutel maken.
Selecteer een symmetrisch versleutelingsalgoritme.
Noteer de ARN nadat je sleutel is gemaakt. Ondersteunde indelingen zijn onder meer
arn:aws:kms:<region>:<account_number>:key/<uuid>,...:key/mrk-*of...:alias/<alias_name>.

2. Maak een aangepast beleid voor beperkte toegang tot de KMS-sleutel
Ga naar IAM -> Beleid en klik op Beleid maken.
Selecteer in de stap Machtigingen opgeven de optie JSON en voer het volgende in om het beleid KMS-toegangsacties te geven. Zorg ervoor dat je YOUR_KMS_ARN vervangt door de ARN van de sleutel die je hebt gemaakt.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": <YOUR_KMS_ARN>
}
]
}3. Maak een IAM-rol die OpenAI kan aannemen en wijs deze toe aan het beleid met beperkte toegang tot je KMS
OpenAI roept AssumeRole aan vanuit een AWS-account van OpenAI. Met deze stap kan de AWS-principal van OpenAI de beperkte rol aannemen voor toegang tot je KMS.
Ga naar IAM -> Rollen en klik vervolgens op Rol maken.
Selecteer in de stap Vertrouwde entiteit selecteren de optie Aangepast vertrouwensbeleid.

Voer vervolgens het volgende in bij Aangepast vertrouwensbeleid om toegang tot de AWS-principal van OpenAI toe te staan.
De principal is de AWS-principal van OpenAI:
arn:aws:iam::790389265272:role/EnterpriseKeyManagement.Geef aan welke ExternalId OpenAI moet doorgeven tijdens het
AssumeRole-proces.Gebruik voor ChatGPT of API de organisatie-ID (org-xxx) die aan je werkruimte is gekoppeld: https://platform.api.openai.org/settings/organization/general.
Voor API kun je een specifieke API-project-ID gebruiken voor meer granulariteit.
{
"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>,
]
}
}
}
]
}Zoek vervolgens in de stap Machtigingen toevoegen naar de beleidsnaam van het IAM-beleid dat je in de vorige stap hebt gemaakt. Klik op het selectievakje naast de beleidsnaam en klik vervolgens op Volgende.

Selecteer tot slot in het gedeelte Naam, controleren en maken een willekeurige rolnaam.
4. Pas eventuele extra beperkingen toe in overeenstemming met je eigen beveiligingspraktijken
Hierboven staat de minimaal vereiste informatie die OpenAI nodig heeft om EKM in te stellen. Je kunt aanvullende sleutelbeleidsregels of beperkingen toepassen in overeenstemming met je eigen interne beveiligingspraktijken, zolang OpenAI versleutelings- en ontsleutelingsbewerkingen op je KMS kan aanroepen. Wanneer je de hieronder beschreven endpoint voor sleutelregistratie bij OpenAI aanroept, valideren we je configuratie.
Na het voltooien van de bovenstaande stappen
ChatGPT Enterprise
Neem contact op met je OpenAI-contactpersoon en deel het volgende:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"De rol-ARN die OpenAI in je cloud zal aannemen.
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"De ARN van het Key Management System voor de hoofdsleutel die jij beheert.
We schakelen EKM in voor je ChatGPT-organisatie/werkruimte.
API
Registreer je externe sleutel bij OpenAI
Volg de instructies in deze API-referentie: Externe sleutels in de Management API.
Registreer eerst je externe sleutel op OpenAI-organisatieniveau; hierdoor wordt een externe sleutel-ID gegenereerd.
In deze stap valideren we dat je invoer geldig is en dat we ons bij je KMS kunnen verifiëren.
Hiermee wordt EKM nog niet toegevoegd aan je OpenAI-project.
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-configuratie",
"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": <uw organisatie-id of project-id>
}'Maak vervolgens een OpenAI-project dat aan de externe sleutel is gekoppeld. Hierna is EKM geactiveerd voor je project. De responsbody van deze API-aanroep geeft je de project-ID (proj_xxx).
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "Een project",
"external_key_id": "extkey_xxxx"
}'