OpenAI

إرشادات تكامل OpenAI / Azure EKM

إرشادات تفصيلية خطوة بخطوة لتوفير خطوة Azure وتفعيل نظام EKM

تم التحديث: 21 days ago

نظرة عامة

تتيح إدارة المفاتيح المؤسسية (EKM) لـ OpenAI تشفير البيانات باستخدام مفتاح رئيسي أنت من يتحكم فيه. لكي تتمكن OpenAI من استدعاء عمليات التشفير/فك التشفير على Key Vault الخاص بك، سنحتاج إلى منحنا حق الوصول. ونستعرض في هذا المستند كيفية إعداد حساب Azure لديك بحيث يمكن لـ OpenAI تولي دور يتمتع بأذونات مخزن المفاتيح Key Vault.

Azure EKM flow where OpenAI EKM uses Microsoft Entra ID to access your Key Vault and master KEK

الخطوات

1. إنشاء المعرّف الرئيسي للخدمة لـ OpenAI في حسابك

  1. احصل على رمز وصول

az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_ID
  1. إنشاء المعرّف الرئيسي للخدمة - إن معرّف 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.

  1. انتقل إلى الاشتراكات -> التحكم في الوصول (IAM)

  2. ضمن القائمة المنسدلة + إضافة، اختر إضافة دور مخصص

  3. انتقل إلى علامة التبويب JSON، واضغط على "تعديل"، وأضف ما يلي:

    1. اسم أي دور - تذكّر الاسم الذي اخترته

    2. الأذونات التالية ضمن dataActions:

      1. Microsoft.KeyVault/vaults/keys/encrypt/action

      2. Microsoft.KeyVault/vaults/keys/decrypt/action

      3. Microsoft.KeyVault/vaults/keys/read

OpenAI / Azure EKM Integration Instructions Custom Role

3. إنشاء مخزن مفاتيح + مفتاح

إذا لم يكن لديك واحد بالفعل، فأنشئ مخزن مفاتيح جديدًا في نفس الاشتراك الذي أنشأت فيه للتو الدور المخصص.

في مخزن المفاتيح هذا، أنشئ مفتاحًا جديدًا:

  1. انتقل إلى مخزن المفاتيح -> الكائنات -> المفاتيح، ثم اضغط على إنشاء/استيراد

  2. ضمن الخيارات، حدد إنشاء

Azure Key Vault Keys page with Generate/Import highlighted to add a key
  1. حدد RSA كخوارزمية للتشفير.

  2. يمكنك تحديد أي حجم لمفتاح RSA

  3. قدّم اسم المفتاح بالتنسيق التالي: <org-xxx>--<any_name> حيث org-xxx هو معرّف منظمة OpenAI الخاص بك، ويمكنك العثور عليه على الرابط https://platform.openai.com/settings/organization/general

Azure Key Vault key generation form with RSA selected and key name org-abcdefg--test-keyvault-key

إذا لم تتمكن من عرض مفتاح أو إنشائه، فتأكد من أن لديك دور مسؤول مخزن المفاتيح، فهذا الدور مطلوب حتى إذا كان لديك دور المالك. لتعيين الدور:

  1. انتقل إلى مخزن المفاتيح -> التحكم في الوصول (IAM)

  2. انقر على إضافة -> إضافة تعيين دور

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment

4. أنشئ تعيين دور للمعرف الرئيسي لخدمة OpenAI + نظام KMS مخصص جديد + مفتاح جديد

  1. انتقل إلى مخزن المفاتيح -> الكائنات -> المفاتيح ثم انقر على الصف الخاص بالمفتاح الذي أنشأته

  2. انتقل إلى التحكم في الوصول (IAM) للمفتاح الذي نقرت عليه للتو (وليس مخزن المفاتيح).

  3. ضمن القائمة المنسدلة + إضافة اختر إضافة تعيين دور

Azure Key Vault Access control (IAM) page with Add menu open to Add role assignment
  1. في علامة التبويب الدور، اختر اسم الدور المخصص الذي أنشأته للتو.

Azure role list filtered for openai- with the openai-azure-kms-role entry
  1. في علامة التبويب الأعضاء:

    1. انقر على "+ تحديد الأعضاء"

    2. اكتب "ekm -" في شريط البحث، ثم يجب أن يظهر المعرف الرئيسي لخدمة OpenAI الذي أنشأته في الخطوة الأولى

Azure role assignment Members step with EKM - OpenAI Azure Application selected as a member

5. طبّق أي قيود إضافية بما يتماشى مع ممارساتك الأمنية الخاصة

ما سبق هو الحد الأدنى من المعلومات المطلوبة التي تحتاجها OpenAI لإعداد نظام EKM. يمكنك تطبيق سياسات إضافية للمفاتيح أو قيود تتماشى مع ممارسات الأمان الداخلية الخاصة بك، طالما أن OpenAI قادرة على استدعاء عمليات التشفير وفك التشفير على نظام KMS لديك. عند استدعاء نقطة نهاية تسجيل المفتاح في OpenAI الموضحة أدناه، سنتحقق من صحة إعدادك.

بعد إتمام الخطوات السابقة

ChatGPT Enterprise

يرجى التواصل مع جهة الاتصال المخصصة لك في OpenAI ومشاركة ما يلي:

  • "tenant_id": "<YOUR_AZURE_TENANT_UUID>"

  • "vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"

  • "key_name": "<YOUR_KEY_NAME>"

  • اسم المفتاح الرئيسي في مخزن مفاتيح Azure الذي تديره

  • يجب أن يكون اسم المفتاح بالتنسيق <org-xxx>--<any_name> حيث إن org-xxx هو معرّف المنظمة الخاص بك في OpenAI، ويمكنك العثور عليه على الرابط https://platform.openai.com/settings/organization/general.

سنفعّل نظام EKM لمنظمة/مساحة عمل ChatGPT الخاصة بك.

API

سجّل مفتاح API الخارجي لدى OpenAI

اتبع الإرشادات الواردة في مرجع API هذا المفاتيح الخارجية في واجهة Management API

  • أولاً، سجّل مفتاحك الخارجي على مستوى منظمة OpenAI، مما يؤدي إلى إنشاء معرّف مفتاح خارجي بالتنسيق extkey_xxx

  • في هذه الخطوة، سنتحقق من أن المدخلات التي أدخلتها صالحة وأنه يمكننا المصادقة على نظام KMS الخاص بك.

  • لن يؤدي هذا إلى إضافة نظام EKM إلى مشروع OpenAI الخاص بك حتى الآن.

# يؤدي هذا إلى إنشاء معرّف مفتاح خارجي بالشكل 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 هذا معرّف المشروع (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"
}'

هل كانت هذه المقالة مفيدة؟