Шолу
Enterprise Key Management (EKM) OpenAI жүйесіне сіз басқаратын басты кілтті пайдаланып деректерді шифрлауға мүмкіндік береді. Бұл құжат OpenAI жүйесіне KMS жүйеңізде шектеулі рұқсаттар беру үшін AWS есептік жазбаңызды қалай баптау керегін көрсетеді.

Қадамдар
1. Жаңа KMS кілтін жасаңыз
KMS -> Customer managed keys бөліміне өтіп, Create Key түймесін басыңыз.
Симметриялық шифрлау алгоритмін таңдаңыз.
Кілтіңіз жасалғаннан кейін оның ARN мәнін жазып алыңыз. Қолдау көрсетілетін форматтарға
arn:aws:kms:<region>:<account_number>:key/<uuid>,...:key/mrk-*немесе...:alias/<alias_name>кіреді.

2. KMS кілтіне шектеулі қатынас үшін теңшелетін саясат жасаңыз
IAM -> Policies бөліміне өтіп, Create Policy түймесін басыңыз.
Specify permissions қадамында JSON таңдаңыз да, саясатқа KMS қатынас әрекеттерін беру үшін төмендегіні енгізіңіз. YOUR_KMS_ARN мәнін өзіңіз жасаған кілттің ARN мәнімен ауыстырғаныңызға көз жеткізіңіз.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": <YOUR_KMS_ARN>
}
]
}3. OpenAI қабылдай алатын IAM рөлін жасап, оны KMS жүйеңізге шектеулі қатынасы бар саясатқа тағайындаңыз
OpenAI өзіне тиесілі AWS есептік жазбасынан AssumeRole шақырады. Бұл қадам OpenAI компаниясының AWS принципалына KMS жүйеңізге қатынасу үшін шектеулі рөлді қабылдауға мүмкіндік береді.
IAM -> Roles бөліміне өтіп, Create Role түймесін басыңыз.
Select trusted entity қадамында Custom trust policy параметрін таңдаңыз.

Одан кейін OpenAI компаниясының AWS принципалына қатынас беруге рұқсат ету үшін Custom trust policy ішіне төмендегіні енгізіңіз.
Принципал — OpenAI компаниясының AWS принципалы:
arn:aws:iam::790389265272:role/EnterpriseKeyManagement.AssumeRoleпроцесі кезінде OpenAI қай ExternalId мәнін беруі керегін көрсетіңіз.ChatGPT немесе API үшін жұмыс кеңістігіңізбен байланыстырылған ұйым идентификаторын (org-xxx) пайдаланыңыз: https://platform.api.openai.org/settings/organization/general.
API үшін нақтырақ баптау мақсатында белгілі бір API жобасының идентификаторын пайдалануға болады.
{
"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>,
]
}
}
}
]
}Содан кейін Add permissions қадамында алдыңғы қадамда жасаған IAM саясатының атауын іздеңіз. Саясат атауының жанындағы құсбелгіні басыңыз, содан кейін Next түймесін басыңыз.

Соңында, Name, review, and create бөлімінде кез келген рөл атауын таңдаңыз.
4. Өзіңіздің қауіпсіздік тәжірибелеріңізге сай кез келген қосымша шектеулерді қолданыңыз
Жоғарыда OpenAI жүйесіне EKM орнату үшін қажет ең аз міндетті ақпарат берілген. OpenAI сіздің KMS жүйеңізде шифрлау және шифрды шешу операцияларын шақыра алатын болса, өзіңіздің ішкі қауіпсіздік тәжірибелеріңізге сай қосымша кілт саясаттарын немесе шектеулерді қолдана аласыз. Төменде сипатталған OpenAI кілтті тіркеу соңғы нүктесін шақырған кезде, біз баптауыңызды тексереміз.
Жоғарыдағы қадамдарды орындағаннан кейін
ChatGPT Enterprise
OpenAI өкіліне хабарласып, төмендегіні бөлісіңіз:
"role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"OpenAI бұлтыңызда қабылдайтын рөлдің ARN мәні.
"kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"Сіз басқаратын басты кілтке арналған Key Management System ARN мәні.
ChatGPT ұйымыңыз/жұмыс кеңістігіңіз үшін EKM жүйесін қосамыз.
API
Сыртқы кілтіңізді OpenAI жүйесінде тіркеңіз
Мына API анықтамасындағы нұсқауларды орындаңыз: Management API ішіндегі сыртқы кілттер.
Алдымен сыртқы кілтіңізді OpenAI ұйымы деңгейінде тіркеңіз, бұл сыртқы кілт идентификаторын жасайды.
Бұл қадамда енгізген деректеріңіздің жарамды екенін және KMS жүйеңізде аутентификация жасай алатынымызды тексереміз.
Бұл OpenAI жобаңызға EKM жүйесін әлі қоспайды.
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 конфигурациясы",
"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": <ұйым идентификаторыңыз немесе жоба идентификаторыңыз>
}'Содан кейін сыртқы кілтпен байланыстырылған OpenAI жобасын жасаңыз. Осыдан кейін жобаңызда EKM белсендіріледі. Бұл API шақыруының жауап денесі сізге жоба идентификаторын (proj_xxx) береді.
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "Кейбір жоба",
"external_key_id": "extkey_xxxx"
}'