अवलोकन
एंटरप्राइज़ की मैनेजमेंट (EKM) OpenAI को आपके नियंत्रण में मास्टर की का उपयोग करके डेटा एन्क्रिप्ट करने की अनुमति देता है. यह दस्तावेज़ दिखाता है कि अपने KMS पर OpenAI को सीमित परमिशन्स देने के लिए अपने GCP अकाउंट को कैसे सेट अप करें.

चरण
1. OpenAI के लिए फ़ेडरेटेड आइडेंटिटी बनाएँ
OpenAI एक OpenAI-स्वामित्व वाले GCP अकाउंट से एक पहचान टोकन जारी करेगा, जो इस प्रकार दिखेगा.
azp और sub, GCP में OpenAI की सर्विस अकाउंट आईडी हैं.
aud आपका OpenAI संगठन आईडी है. आप कोई दूसरा ऑडियंस भी चुन सकते हैं, जैसे कि आपका OpenAI प्रोजेक्ट आईडी - नीचे दिए गए निर्देश देखें.
{
"aud": "org-xxxx",
"azp": "105900137572174660365",
"exp": 1747876928,
"iat": 1747873328,
"iss": "https://accounts.google.com",
"sub": "105900137572174660365"
}यह चरण उस आइडेंटिटी टोकन द्वारा किए गए क्लेम्स को पहचानता है और आपके GCP STS को एक्सेस टोकन जारी करने में सक्षम बनाता है, जब वह आइडेंटिटी टोकन प्रदान किया जाता है.
IAM और एडमिन -> वर्कलोड आइडेंटिटी फ़ेडरेशन पर जाएँ और पूल बनाएँ पर क्लिक करें

आइडेंटिटी पूल बनाएंचरण में, पूल नामके लिए कुछ भी दर्ज करें.
चरण पूल में प्रोवाइडर जोड़ने में:
‘Select a provider’ में, OpenID Connect (OIDC)चुनें.
प्रदाता नाम के लिए कुछ भी दर्ज करें.
Issuer (URL) अनुभाग में https://accounts.google.comदर्ज करें
ऑडियंस अनुभाग में
अनुमत दर्शकचुनें
वह ऑडियंस दर्ज करें जिसे OpenAI को इंगित करना चाहिए जब हम आपको एक टोकन देते हैं।
ChatGPT या API के लिए: आप OpenAI API organization ID (org-xxx) दर्ज कर सकते हैं.
API के लिए: अधिक बारीकी के लिए आप एक विशिष्ट API प्रोजेक्ट id डाल सकते हैं.

एट्रिब्यूट मैपिंग अनुभाग में
google.subject के लिए assertion.sub दर्ज करें

एट्रिब्यूट कंडीशन्स सेक्शन में
अब आपको https://console.cloud.google.com/iam-admin/workload-identity-pools पर अपना वर्कलोड आइडेंटिटी पूल और वर्कलोड आइडेंटिटी प्रोवाइडर सूचीबद्ध दिखाई देना चाहिए. पेज
वर्कलोड आइडेंटिटी पूल ID

वर्कलोड आइडेंटिटी प्रोवाइडर आईडी

2. सुनिश्चित करें कि KMS सक्षम है
https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview पर जाएँ KMS को सक्षम करने के लिए. जिस GCP प्रोजेक्ट में आपने OpenAI की फ़ेडरेटेड आइडेंटिटी को पहचाना है, उसी में अपना KMS बनाना आपके लिए आवश्यक नहीं है; हालांकि, अगर प्रोजेक्ट अलग-अलग हैं, तो KMS प्रोडक्ट कम-से-कम दोनों प्रोजेक्ट में सक्षम होना चाहिए.
3. एक नई KMS कुंजी बनाएँ
Go सुरक्षा -> डेटा सुरक्षा > कुंजी प्रबंधन
ओवरव्यू टैब के तहत Create key ringपर क्लिक करें
अपनी कुंजी रिंग के लिए कोई भी नाम चुनें
उद्देश्य और एल्गोरिदम के लिए, सिमेट्रिक एन्क्रिप्ट/डिक्रिप्ट चुनें

एक बार जब आप Key Rings बना लेते हैं, तो वह Key Rings टैब में सूचीबद्ध होनी चाहिए. Key Ring पर क्लिक करें।
की रिंग के विवरण में, कुंजी बनाएँपर क्लिक करें.
अपनी कुंजी के लिए कोई भी नाम चुनें
4. KMS पर एन्क्रिप्ट/डिक्रिप्ट ऑपरेशनों के लिए एक सीमित भूमिका बनाएँ.
Go IAM & एडमिन -> रोल्स -> रोल बनाएँ
रोल टाइटल और ID के लिए कुछ भी दर्ज करें.
Add Permissions पर क्लिक करें, फिर निम्नलिखित को जोड़ें.
cloudkms.cryptoKeyVersions.useToDecrypt
cloudkms.cryptoKeyVersions.useToEncrypt
5. एन्क्रिप्ट/डिक्रिप्ट ऑपरेशनों के लिए OpenAI की फ़ेडरेटेड आइडेंटिटी को सीमित KMS भूमिका पर असाइन करें
Go सुरक्षा -> डेटा सुरक्षा > कुंजी प्रबंधन
अपने Key Ring के नाम पर क्लिक करें, फिर अपने Key के नाम पर क्लिक करके अपने की विवरण पृष्ठ पर जाएँ.
अनुमतियाँ टैब पर क्लिक करें, फिर एक्सेस दें बटन पर क्लिक करें

OpenAI फ़ेडरेटेड पहचान को उस कस्टम भूमिका पर असाइन करें, जिसे आपने पहले बनाया था.
Add principals सेक्शन के लिए, यह दर्ज करें: principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365
भूमिकाएँ असाइन करें अनुभाग में, सीमित EKM अनुमतियों के लिए पिछले चरण में बनाई गई कस्टम भूमिका चुनें
छह. अपनी सुरक्षा प्रथाओं के अनुरूप कोई भी अतिरिक्त प्रतिबंध लागू करें.
ऊपर दी गई न्यूनतम आवश्यक जानकारी OpenAI को EKM सेट अप करने के लिए चाहिए. आप अपनी इंटरनल सिक्योरिटी प्रैक्टिसेज़ के अनुरूप अतिरिक्त key policies या restrictions लागू करने के लिए स्वतंत्र हैं, बशर्ते कि OpenAI आपके KMS पर encrypt और decrypt operations को कॉल कर सके. जब आप नीचे वर्णित OpenAI के की रजिस्ट्रेशन एंडपॉइंट को कॉल करते हैं, तो हम आपके सेटअप को वैलिडेट करेंगे.
ऊपर दिए गए चरणों को पूरा करने के बाद
ChatGPT Enterprise
कृपया अपने OpenAI संपर्क से संपर्क करें और निम्नलिखित साझा करें:
"वर्कलोड_पहचान_प्रोजेक्ट_संख्या": "123456789012",
“वर्कलोड_आइडेंटिटी_पूल_आईडी”: “openai-azure”,
"वर्कलोड_पहचान_प्रदाता_id": "openai-ekm-service-role",
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_कुंजी_रिंग_नाम": "openai-kms-key-ring",
"kms_कुंजी_स्थान": "us-east1"
वह क्षेत्र जहां आपकी Key Management System मास्टर कुंजी स्थित है.
हम आपके ChatGPT संगठन/वर्कस्पेस के लिए EKM इनेबल करेंगे.
API
अपनी एक्सटर्नल कुंजी को OpenAI के साथ रजिस्टर करें.
इस API संदर्भ में दिए गए निर्देशों का पालन करें मैनेजमेंट API में बाहरी कुंजियाँ
सबसे पहले, अपनी बाहरी कुंजी को OpenAI संगठन स्तर पर पंजीकृत करें, जिससे एक बाहरी कुंजी आईडी जनरेट होगी.
इस चरण में, हम यह जांचकर कि हम आपके KMS में ऑथ कर सकते हैं, 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 कॉन्फ़िगरेशन",
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"audience": <आपकी संगठन आईडी या प्रोजेक्ट<your org id or 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": "कुछ प्रोजेक्ट",
"external_key_id": "extkey_xxxx"
}'