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

Mga Tagubilin sa Integrasyon ng OpenAI / AWS EKM

Sunod-sunod na tagubilin para mag-provision ng AWS at i-activate ang EKM

Na-update: 14 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 i-click ang Gumawa ng Key.

  2. Pumili ng symmetric na encryption algorithm.

  3. Pagkatapos magawa ang iyong key, tandaan ang ARN nito. Kasama 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 -> Policies, pagkatapos ay i-click ang Gumawa ng Patakaran.

  2. Sa hakbang na Tukuyin ang mga pahintulot, piliin ang JSON at ilagay ang sumusunod upang bigyan ang patakaran ng mga aksyon sa 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 ia-assume ng OpenAI, at italaga ito sa patakarang may limitadong access sa iyong KMS

Tatawag ang OpenAI ng AssumeRole mula sa AWS account na pagmamay-ari ng OpenAI. Hinahayaan ng hakbang na ito ang AWS principal ng OpenAI na i-assume ang limitadong role para ma-access ang iyong KMS.

  1. Pumunta sa IAM -> Roles, pagkatapos ay i-click ang Gumawa ng Role.

  2. Sa hakbang na Pumili ng pinagkakatiwalaang entity, piliin ang Custom na trust policy.

AWS IAM Select trusted entity screen with Custom trust policy selected

Susunod, ilagay ang sumusunod sa Custom na trust policy upang payagan ang access sa AWS principal ng OpenAI.

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

  • Isaad kung aling ExternalId ang dapat ipasa ng OpenAI habang ginagawa ang prosesong AssumeRole.

{
    "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 ng IAM policy na ginawa mo sa nakaraang hakbang. I-click ang checkbox sa tabi ng pangalan ng patakaran, pagkatapos ay i-click 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 gumawa, pumili ng anumang pangalan ng 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 API reference na ito: Mga External Key sa Management API.

  1. Una, irehistro ang iyong external key sa antas ng organisasyon ng OpenAI, na bubuo ng external key ID.

  2. Sa hakbang na ito, iva-validate namin na valid ang iyong input 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": <iyong org id o 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": "Ilang Project",

   "external_key_id": "extkey_xxxx"
}'

Nakatulong ba ang artikulong ito?