विहंगावलोकन
Enterprise Key Management (EKM) OpenAI ला तुम्ही नियंत्रित करत असलेली मास्टर की वापरून डेटा एन्क्रिप्ट करू देते. हा दस्तऐवज तुमच्या KMS वर OpenAI ला मर्यादित परवानग्या देण्यासाठी तुमचे GCP खाते कसे सेट करायचे ते दाखवतो.

पायऱ्या
1. OpenAI साठी फेडरेटेड ओळख तयार करा
OpenAI च्या मालकीच्या GCP खात्यातून OpenAI एक ओळख टोकन जारी करेल, जे साधारण असे दिसते.
azp आणि sub हे GCP मधील OpenAI चे सेवा खाते ID आहेत
aud हा तुमचा OpenAI संस्था ID आहे. तुम्ही तुमचा OpenAI प्रकल्प ID यासारखा दुसरा audience देखील निवडू शकता - खालील सूचना पहा
{
"aud": "org-xxxx",
"azp": "105900137572174660365",
"exp": 1747876928,
"iat": 1747873328,
"iss": "https://accounts.google.com",
"sub": "105900137572174660365"
}हा टप्पा त्या ओळख टोकनने केलेले दावे ओळखतो आणि ते ओळख टोकन पुरवले असता तुमच्या GCP STS ला प्रवेश टोकन जारी करण्यास सक्षम करतो.
IAM & Admin -> Workload Identity Federation येथे जा आणि Create Pool वर क्लिक करा

Create an identity pool, या टप्प्यात pool name. साठी काहीही प्रविष्ट करा.
Add a provider to pool या टप्प्यात:
Select a provider मध्ये, OpenID Connect (OIDC) निवडा
provider name साठी काहीही प्रविष्ट करा.
Issuer (URL) विभागात, https://accounts.google.com प्रविष्ट करा
Audiences विभागात
Allowed audiences निवडा
आम्ही तुम्हाला टोकन देताना OpenAI ने दर्शवावा असा audience प्रविष्ट करा.
ChatGPT किंवा API साठी: तुम्ही OpenAI API संस्था ID (org-xxx) घालू शकता
API साठी: अधिक सूक्ष्म नियंत्रणासाठी तुम्ही विशिष्ट API प्रकल्प id घालू शकता.

Attribute mapping विभागात
google.subject साठी assertion.sub प्रविष्ट करा

Attribute conditions विभागात
आता https://console.cloud.google.com/iam-admin/workload-identity-pools पृष्ठावर तुमचा workload identity pool आणि workload identity provider सूचीबद्ध दिसला पाहिजे
Workload identity pool id

Workload identity provider ID

2. KMS सक्षम असल्याची खात्री करा
KMS सक्षम करण्यासाठी https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview येथे जा. ज्या GCP प्रकल्पात तुम्ही OpenAI ची फेडरेटेड ओळख नोंदवली आहे, त्याच प्रकल्पात तुमचा KMS तयार करणे आवश्यक नाही; मात्र, प्रकल्प वेगळे असल्यास, KMS उत्पादन किमान दोन्ही प्रकल्पांमध्ये सक्षम असणे आवश्यक आहे.
3. नवीन KMS की तयार करा
Security -> Data Protection > Key Management येथे जा
Overview टॅबखाली Create key ring वर क्लिक करा
तुमच्या key ring साठी कोणतेही नाव निवडा
Purpose आणि algorithm साठी, Symmetric encrypt/decrypt निवडा

तुम्ही key ring तयार केल्यावर, तो Key Rings टॅबमध्ये सूचीबद्ध दिसला पाहिजे. key ring वर क्लिक करा.
key ring तपशीलांमध्ये, Create Key वर क्लिक करा
तुमच्या कीसाठी कोणतेही नाव निवडा
4. KMS वर एन्क्रिप्ट/डिक्रिप्ट ऑपरेशन्ससाठी मर्यादित भूमिका तयार करा
IAM & Admin -> Roles -> Create role येथे जा
भूमिकेचे शीर्षक आणि ID साठी काहीही प्रविष्ट करा
Add Permissions वर क्लिक करा, नंतर पुढील जोडा
cloudkms.cryptoKeyVersions.useToDecrypt
cloudkms.cryptoKeyVersions.useToEncrypt
5. एन्क्रिप्ट/डिक्रिप्ट ऑपरेशन्ससाठी OpenAI ची फेडरेटेड ओळख मर्यादित KMS भूमिकेला नियुक्त करा
Security -> Data Protection > Key Management येथे जा
तुमच्या key ring नावावर क्लिक करा, नंतर की तपशील पृष्ठावर जाण्यासाठी तुमच्या key name वर क्लिक करा.
Permissions टॅबवर क्लिक करा, नंतर Grant Access बटणावर क्लिक करा

OpenAI ची फेडरेटेड ओळख तुम्ही आधी तयार केलेल्या कस्टम भूमिकेला नियुक्त करा
Add principals विभागासाठी, principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365 प्रविष्ट करा
Assign roles विभागात, मर्यादित EKM परवानग्यांसाठी मागील टप्प्यात तयार केलेली कस्टम भूमिका निवडा
6. तुमच्या स्वतःच्या सुरक्षा पद्धतींनुसार कोणतीही अतिरिक्त बंधने लागू करा
वरील माहिती OpenAI ला EKM सेट करण्यासाठी आवश्यक असलेली किमान आवश्यक माहिती आहे. OpenAI तुमच्या KMS वर encrypt आणि decrypt ऑपरेशन्स कॉल करू शकत असेल, तोपर्यंत तुम्ही तुमच्या अंतर्गत सुरक्षा पद्धतींनुसार अतिरिक्त की धोरणे किंवा बंधने लागू करू शकता. खाली वर्णन केलेल्या OpenAI सोबतच्या key registration एंडपॉइंटला तुम्ही कॉल करता तेव्हा आम्ही तुमचा सेटअप पडताळू.
वरील पायऱ्या पूर्ण केल्यानंतर
ChatGPT Enterprise
कृपया तुमच्या OpenAI संपर्काशी संपर्क साधा आणि पुढील शेअर करा:
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_location": "us-east1"
तुमच्या Key Management System मास्टर कीचे स्थान असलेला प्रदेश
आम्ही तुमच्या ChatGPT संस्था/वर्कस्पेससाठी EKM सक्षम करू.
API
तुमची बाह्य की OpenAI कडे नोंदवा
या API संदर्भातील सूचनांचे अनुसरण करा Management API मधील बाह्य की
प्रथम, तुमची बाह्य की OpenAI संस्था स्तरावर नोंदवा, ज्यामुळे बाह्य की id तयार होईल.
या टप्प्यात, आम्ही तुमच्या KMS वर auth करू शकतो का हे तपासून GCP वरील तुमचा सेटअप पडताळू.
यामुळे अजून तुमच्या OpenAI प्रकल्पात EKM जोडले जाणार नाही.
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "gcp",
"name": "GCP EKM Config",
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"audience": <तुमचा org id किंवा project id>,
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_location": "us-east1"
}'नंतर, बाह्य कीशी संबंधित OpenAI प्रकल्प तयार करा. यानंतर, तुमच्या प्रकल्पावर EKM सक्रिय केले जाते.
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"
}'