अवलोकन
Enterprise Key Management (EKM) OpenAI को उस मास्टर कुंजी का उपयोग करके डेटा एन्क्रिप्ट करने की अनुमति देता है जिसे आप नियंत्रित करते हैं. आपके Key Vault पर OpenAI को encrypt/decrypt operations कॉल करने के लिए हमें एक्सेस प्रदान करनी होगी. यह दस्तावेज़ दिखाता है कि अपने Azure अकाउंट को कैसे सेट अप करें ताकि OpenAI Key Vault अनुमतियों के साथ एक भूमिका ग्रहण कर सके.

चरण
एक. अपने अकाउंट में OpenAI के लिए एक सर्विस प्रिंसिपल बनाएं.
एक्सेस टोकन प्राप्त करें
az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID (पहुंच टोकन प्राप्त करें)2. सर्विस प्रिंसिपल बनाएँ - नीचे दिए गए अनुरोध में appId, OpenAI की एप्लिकेशन क्लाइंट आईडी है. यह “EKM - OpenAI Azure” डिस्प्ले नाम के साथ एक प्रिंसिपल बनाएगा - इसे बाद के चरणों के लिए याद रखें.
OpenAI / Azure EKM इंटीग्रेशन निर्देश - सर्विस प्रिंसिपल बनाएँ
curl -X POST https://graph.microsoft.com/v1.0/servicePrincipals \
-H "Authorization: Bearer $TOKEN_FROM_ABOVE" \
-H "Content-Type: application/json" \
–d '{"appId": "20a14814-5ab7-4612-a671-1382b412bf93"}'2. सीमित KMS एक्सेस के लिए कस्टम रोल बनाएँ
Go Subscriptions -> Access Control (IAM)
+ Add ड्रॉपडाउन मेनू में, कस्टम भूमिका जोड़ेंको चुनें
Go JSON टैब पर क्लिक करें, एडिट पर क्लिक करें, और निम्नलिखित जोड़ें
कोई भी रोल का नाम - आपने जो नाम चुना है, उसे याद रखें.
dataActionsमें निम्नलिखित अनुमतियाँ हैं
Microsoft.KeyVault/vaults/keys/encrypt/action
Microsoft.KeyVault/vaults/keys/decrypt/action
Microsoft.KeyVault/vaults/keys/read

तीन. Key Vault + Keyबनाएं।
अगर आपके पास पहले से कोई नहीं है, तो उसी सदस्यता में एक नया Key Vault बनाएं, जिसमें आपने अभी-अभी अपनी कस्टम रोल बनाई है
उस Key Vault में, एक नई Key बनाएँ:
Go Key Vault -> Objects -> Keys, फिर Generate/Import पर क्लिक करें
विकल्पों के अंतर्गत Generate
चुनें.
एन्क्रिप्शन एल्गोरिदम के लिए RSA का चयन करें.
आप कोई भी RSA कुंजी आकार चुन सकते हैं
निम्नलिखित फ़ॉर्मैट में एक कुंजी नाम प्रदान करें: <org-xxx>--<any_name>, जहाँ org-xxx आपकी OpenAI ऑर्गेनाइज़ेशन ID है, जिसे आप https://platform.openai.com/settings/organization/general पर पा सकते हैं

अगर आप किसी कुंजी को देख या बना नहीं पा रहे हैं, तो सुनिश्चित करें कि आपके पास Key Vault Administrator की भूमिका है. यह तब भी ज़रूरी है, भले ही आपके पास ओनर की भूमिका हो. भूमिका असाइन करने के लिए:
Go Key Vault->Access Control (IAM)पर जाएं
जोड़ें-> भूमिका असाइनमेंट जोड़ें
पर क्लिक करें
4. OpenAI सर्विस प्रिंसिपल + नए कस्टम KMS + नई कुंजी के लिए एक रोल असाइनमेंट बनाएं.
Go to Key Vault -> Objects -> Keys फिर आपके द्वारा बनाई गई कुंजी की पंक्ति पर क्लिक करें.
जिस key पर आपने अभी क्लिक किया है, उसके लिए Access control (IAM) पर Go करें (अपने key vault पर नहीं).
+ Add ड्रॉपडाउन के अंतर्गत, Add role assignment
चुनें.
रोल टैब में, उस कस्टम भूमिका का नाम चुनें जिसे आपने अभी-अभी बनाया है.

सदस्य टैब में:
“+ सदस्य चुनें” पर क्लिक करें
सर्च बार में “ekm -” टाइप करें, फिर चरण 1 में आपने जो OpenAI सर्विस प्रिंसिपल बनाया था, वह लोड हो जाएगा

पाँच. अपनी खुद की सुरक्षा प्रथाओं के अनुरूप कोई भी अतिरिक्त प्रतिबंध लागू करें.
ऊपर दी गई जानकारी OpenAI को EKM सेट अप करने के लिए आवश्यक न्यूनतम जानकारी है. आप अपनी इंटरनल सिक्योरिटी प्रैक्टिसेज़ के अनुरूप अतिरिक्त key policies या restrictions लागू करने के लिए स्वतंत्र हैं, बशर्ते कि OpenAI आपके KMS पर encrypt और decrypt operations को कॉल कर सके. जब आप नीचे वर्णित OpenAI के की रजिस्ट्रेशन एंडपॉइंट को कॉल करते हैं, तो हम आपके सेटअप को वैलिडेट करेंगे.
ऊपर दिए गए चरणों को पूरा करने के बाद
ChatGPT Enterprise
कृपया अपने OpenAI संपर्क से संपर्क करें और निम्नलिखित साझा करें:
"tenant_id": "<YOUR_AZURE_TENANT_UUID>"
आपके Azure टेनेंट का UUID
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"
वह URI जो आपके द्वारा प्रबंधित मास्टर कुंजी वाले Azure वॉल्ट को दर्शाता है
"key_name": "<YOUR_KEY_NAME>"
Azure Key Vault मास्टर कुंजी का नाम, जिसे आप प्रबंधित करते हो
की का नाम ` <org-xxx>--<any_name> ` इस रूप में होना चाहिए, जहाँ org-xxx आपकी OpenAI संगठन ID है, जिसे आप https://platform.openai.com/settings/organization/general पर पा सकते हैं
हम आपके ChatGPT संगठन/वर्कस्पेस के लिए EKM इनेबल करेंगे.
API
अपनी एक्सटर्नल कुंजी को OpenAI के साथ रजिस्टर करें.
इस API संदर्भ में दिए गए निर्देशों का पालन करें Management API में बाहरी कुंजियाँ
सबसे पहले, अपनी बाहरी कुंजी को OpenAI संगठन स्तर पर रजिस्टर करें, जिससे extkey_xxxके रूप में एक बाहरी कुंजी आईडी जनरेट होगी
इस चरण में, हम यह सुनिश्चित करेंगे कि आपका इनपुट मान्य है और हम आपके KMS से प्रमाणित कर सकते हैं.
यह अभी आपके OpenAI प्रोजेक्ट में EKM नहीं जोड़ेगा.
# यह इस रूप में एक एक्सटर्नल कुंजी आईडी जनरेट करता है extkey_xxx
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "azure",
"name": "<ANY_FRIENDLY_NAME>",
"tenant_id": "<YOUR_AZURE_TENANT_UUID>",
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/",
"key_name": "<YOUR_KEY_NAME>"
}'फिर, एक्सटर्नल कुंजी से संबद्ध एक OpenAI प्रोजेक्ट बनाएं. इसके बाद, आपके प्रोजेक्ट पर EKM सक्रिय हो जाता है.
इस API कॉल की रिस्पॉन्स बॉडी आपको प्रोजेक्ट ID देगी (proj_xxx)
OpenAI / Azure EKM Integration Instructions - प्रोजेक्ट बनाएं.
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"
}'