Ringkasan
Manajemen Kunci Enterprise (EKM) memungkinkan OpenAI mengenkripsi data menggunakan kunci master yang Anda kendalikan. Dokumen ini menjelaskan cara menyiapkan akun AWS Anda untuk memberikan izin terbatas kepada OpenAI pada KMS Anda.

Langkah-langkah
1. Buat kunci KMS baru
Buka KMS -> Kunci yang dikelola pelanggan, lalu klik Buat Kunci
Pilih algoritma enkripsi simetris
Setelah kunci Anda dibuat, catat ARN-nya. Format yang didukung mencakup arn:aws:kms:<region>:<account_number>:key/<uuid>, ...:key/mrk-*, or ...:alias/<alias_name>

2. Buatlah kebijakan khusus untuk akses terbatas ke kunci KMS
Buka IAM -> Kebijakan, lalu klik Buat Kebijakan
Pada langkah Tentukan izin, pilih JSON dan masukkan yang berikut untuk memberikan tindakan akses KMS pada kebijakan tersebut. Pastikan Anda mengganti YOUR_KMS_ARN dengan ARN dari Kunci yang Anda buat.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": <YOUR_KMS_ARN>
}
]
}
3. Buat IAM Role agar dapat digunakan oleh OpenAI, lalu tetapkan ke kebijakan dengan akses terbatas ke KMS Anda
OpenAI akan memanggil AssumeRole dari akun AWS milik OpenAI. Langkah ini mengenali bahwa prinsipal AWS OpenAI dapat mengambil peran terbatas untuk mengakses KMS Anda.
Buka IAM -> Peran, lalu klik Buat Peran
Pada langkah Pilih entitas tepercaya, pilih Kebijakan kepercayaan khusus

Masukkan yang berikut ini ke dalam kebijakan kepercayaan Kustom untuk mengizinkan akses ke principal AWS OpenAI.
Prinsipal tersebut adalah prinsipal AWS milik OpenAI - arn:aws:iam::790389265272:role/EnterpriseKeyManagement
Tunjukkan Externald mana yang harus OpenAI sampaikan selama proses AssumeRole.
Untuk ChatGPT atau API, Anda dapat menggunakan ID Organisasi (org-xxx) yang terkait dengan workspace Anda - https://platform.api.openai.org/settings/organization/general
Untuk API, Anda dapat memasukkan ID proyek API tertentu untuk perincian yang lebih spesifik
{
"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>,
]
}
}
}
]
}
Pada langkah Tambahkan izin, cari nama kebijakan dari kebijakan IAM yang Anda buat pada langkah sebelumnya. Klik kotak centang di samping nama kebijakan, lalu klik Selanjutnya.

Di bagian Nama, tinjau, dan buat, pilih nama peran apa pun.
4. Terapkan batasan tambahan apa pun sesuai dengan praktik keamanan Anda sendiri
Di atas adalah informasi minimum yang diperlukan OpenAI untuk menyiapkan EKM. Anda bebas menerapkan kebijakan atau pembatasan kunci tambahan sesuai dengan praktik keamanan internal Anda sendiri, selama OpenAI dapat memanggil operasi encrypt dan decrypt pada KMS Anda. Saat Anda memanggil endpoint pendaftaran kunci dengan OpenAI yang dijelaskan di bawah ini, kami akan memvalidasi penyiapan Anda.
Setelah menyelesaikan langkah-langkah di atas
ChatGPT Enterprise
Silakan hubungi kontak OpenAI Anda dan bagikan hal berikut:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>",
Role ARN yang akan digunakan OpenAI di cloud Anda
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"
ARN Sistem Manajemen Kunci untuk kunci utama yang Anda kelola
Kami akan mengaktifkan EKM untuk organisasi atau workspace ChatGPT Anda.
API
Daftarkan kunci eksternal Anda dengan OpenAI
Ikuti petunjuk dalam referensi API ini Kunci Eksternal di Management API
Pertama, daftarkan kunci eksternal Anda di tingkat organisasi OpenAI, yang akan menghasilkan ID kunci eksternal.
Pada langkah ini, kami akan memvalidasi bahwa masukan Anda valid dan bahwa kami dapat mengautentikasi ke KMS Anda.
Ini belum akan menambahkan EKM ke proyek OpenAI Anda untuk saat ini.
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>
}'Lalu, buat proyek OpenAI yang terkait dengan kunci eksternal. Setelah ini, EKM diaktifkan pada proyek Anda.
Isi respons dari panggilan API ini akan memberikan ID proyek (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"
}'
