OpenAI
Ang page na ito ay isinalin ng AI. Tingnan ang orihinal na artikulo sa English.

Pag-configure ng EKM sa OpenAI at AWS

Alamin kung paano ihanda ang AWS at i-activate ang Enterprise Key Management (EKM).

Na-update: 3 days ago

Pangkalahatang-ideya

Pinapayagan ng Enterprise Key Management (EKM) ang OpenAI na i-encrypt ang data gamit ang master key na kinokontrol mo. Ipinapakita ng dokumentong ito kung paano i-set up ang iyong AWS account upang bigyan ang OpenAI ng limitadong mga pahintulot sa iyong KMS.

AWS EKM integration flow between OpenAI EKM Service, your STS, your KMS, and your master KEK

Mga hakbang

1. Gumawa ng bagong KMS key

  1. Pumunta sa KMS > Mga key na pinamamahalaan ng customer, pagkatapos ay piliin ang Gumawa ng Key.

  2. Pumili ng algorithm para sa symmetric encryption.

  3. Pagkagawa ng iyong key, itala ang ARN nito. Kabilang sa mga sinusuportahang format ang arn:aws:kms:<region>:<account_number>:key/<uuid>, ...:key/mrk-*, o ...:alias/<alias_name>.

AWS KMS customer managed key details page with key ID and ARN for test-kms

2. Gumawa ng custom na patakaran para sa limitadong access sa KMS key

  1. Pumunta sa IAM > Mga Patakaran, pagkatapos ay piliin ang Gumawa ng Patakaran.

  2. Sa hakbang na Tukuyin ang mga pahintulot, piliin ang JSON at ilagay ang sumusunod para pahintulutan ng patakaran ang mga aksyon para sa pag-access sa KMS. Tiyaking palitan ang YOUR_KMS_ARN ng ARN ng key na ginawa mo.

AWS IAM Create policy page with Specify permissions open and the JSON policy editor selected
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowEncryptDecrypt",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt"
],
"Resource": "<YOUR_KMS_ARN>"
}
]
}

3. Gumawa ng IAM role na gagamitin ng OpenAI, at iugnay ito sa patakarang may limitadong access sa iyong KMS

Tatawagin ng OpenAI ang AssumeRole mula sa isang AWS account na pag-aari ng OpenAI. Sa hakbang na ito, magagamit ng AWS principal ng OpenAI ang limitadong role para ma-access ang iyong KMS.

  1. Pumunta sa IAM > Mga Role, pagkatapos ay piliin ang Gumawa ng Role.

  2. Sa hakbang na Pumili ng pinagkakatiwalaang entity, piliin ang Custom na patakaran sa pagtitiwala.

AWS IAM Select trusted entity screen with Custom trust policy selected

Susunod, ilagay ang sumusunod sa Custom na patakaran sa pagtitiwala para bigyan ng access ang AWS principal ng OpenAI.

  • Ang principal ay ang AWS principal ng OpenAI: arn:aws:iam::790389265272:role/EnterpriseKeyManagement.

  • Tukuyin kung aling ExternalId ang dapat ipasa ng OpenAI sa proseso ng AssumeRole.

    • Para sa ChatGPT o API, gamitin ang Organization ID (org-xxx) na nauugnay sa iyong workspace: mga setting ng organisasyon.

    • Para sa API, puwede kang gumamit ng partikular na API project ID para sa mas tiyak na kontrol.

{
"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>"
]
}
}
}
]
}

Pagkatapos, sa hakbang na Magdagdag ng mga pahintulot, hanapin ang pangalan ng patakaran sa IAM na ginawa mo sa nakaraang hakbang. Lagyan ng tsek ang checkbox sa tabi ng pangalan ng patakaran, pagkatapos ay piliin ang Susunod.

AWS IAM Add permissions page filtered to customer managed KMS policies with test-allow-kms-access selected

Panghuli, sa seksyong Pangalanan, suriin, at gawin, pumili ng anumang pangalan para sa role.

4. Maglapat ng anumang karagdagang paghihigpit alinsunod sa sarili mong mga kasanayan sa seguridad

Nasa itaas ang minimum na kinakailangang impormasyon na kailangan ng OpenAI para i-set up ang EKM. Malaya kang maglapat ng karagdagang mga key policy o paghihigpit alinsunod sa sarili mong mga panloob na kasanayan sa seguridad, hangga't magawa ng OpenAI na tawagin ang mga operasyong encrypt at decrypt sa iyong KMS. Kapag tinawag mo ang endpoint ng pagpaparehistro ng key sa OpenAI na inilalarawan sa ibaba, iva-validate namin ang iyong setup.

Pagkatapos makumpleto ang mga hakbang sa itaas

ChatGPT Enterprise

Mangyaring makipag-ugnayan sa iyong contact sa OpenAI at ibahagi ang sumusunod:

  • "role_arn": "arn:aws:iam::<YOUR_AWS_ACCOUNT_NUMBER>:role/<YOUR_ROLE>"

    • Ang Role ARN na ia-assume ng OpenAI sa iyong cloud.

  • "kms_arn": "arn:aws:kms:<REGION>:<YOUR_AWS_ACCOUNT_NUMBER>:key/<UUID>"

    • Ang ARN ng Key Management System para sa master key na pinamamahalaan mo.

Ie-enable namin ang EKM para sa iyong organisasyon/workspace sa ChatGPT.

API

Irehistro ang iyong external key sa OpenAI

Sundin ang mga tagubilin sa sangguniang ito ng API: Mga External Key sa Management API.

  1. Una, irehistro ang iyong external key sa antas ng organisasyon sa OpenAI. Bubuo ito ng external key ID.

  2. Sa hakbang na ito, titiyakin naming valid ang iyong inilagay at makakapag-authenticate kami sa iyong KMS.

  3. Hindi pa nito idaragdag ang EKM sa iyong proyekto sa 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>"
}'

Pagkatapos, gumawa ng proyekto sa OpenAI na nauugnay sa external key. Pagkatapos nito, na-activate ang EKM sa iyong proyekto. Ibibigay sa iyo ng response body ng API call na ito ang 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": "Some Project",
"external_key_id": "extkey_xxxx"
}'

Nakatulong ba ang artikulong ito?