OpenAI

نظرة عامة حول إدارة المفاتيح المؤسسية (نظام EKM) في OpenAI

تعرّف على كيفية عمل نظام EKM، وأي موفِّري الخدمات المدعومين وأولى خطوات البدء

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

نظرة عامة

تتيح لك إدارة مفاتيح المؤسسات ("نظام EKM") تشفير محتوى عملائك في OpenAI باستخدام مفاتيح تتم إدارتها عبر نظام إدارة المفاتيح ("نظام KMS") الخارجي التابع لك، وهي متاحة لكلٍّ من ChatGPT Enterprise وواجهة API.

تدعم OpenAI التشفير باستخدام مفتاحك الخاص (BYOK) مع الحسابات الخارجية في منصات AWS KMS و Google Cloud (GCP) وAzure Key Vault.

في الوقت الحالي، يقتصر تطبيق نظام EKM على مساحات عمل Enterprise وEdu التي لديها ممثل حساب مُعيَّن من قِبل OpenAI.

كيف يعمل التشفير باستخدام نظام EKM في OpenAI

سير العمل الأساسي

  1. ننشئ مفتاح تشفير البيانات ("مفتاح DEK") لموفّر الخدمات السحابية التابع له.

  2. يدير نظام KMS لديك المفتاح الرئيسي لتشفير المفاتيح ("مفتاح KEK")، سواءً كان مخزنًا داخل الخدمة السحابية لديك أو خارجيًا. وأمر التنفيذ يعود إليك.

  3. نطلب تشفير مفتاح DEK من الخدمة السحابية لديك، للحصول على مفتاح DEK مشفّر. وإذا كان مفتاح KEK الخاص بك مخزّنًا خارجيًا، فإن الخدمة السحابية لديك مجرد أنها تنتقل فقط إلى جهة التخزين الخارجية، في خطوة غير مرئية لـ OpenAI.

التشفير

عند إجراء التشفير، تُشفَّر بياناتك باستخدام مفتاح DEK، ويُخزَّن مفتاح DEK المشفّر بصورة بيانات وصفية في الملف.

EKM encryption flow where OpenAI requests a DEK from your KMS, encrypts data, and stores encrypted data with eDEK

فك التشفير

عند فك التشفير، نطلب من نظام KMS السحابي لديك فك تشفير مفتاح DEK المشفّر وتحويله إلى مفتاح DEK، ثم نفك تشفير البيانات باستخدام مفتاح DEK.

EKM decryption flow where OpenAI requests a DEK from your KMS to decrypt encrypted data for download

المصطلحات الرئيسية

  • مفتاح تشفير البيانات ("مفتاح DEK") - المفتاح الذي يشفّر بياناتك. 

  • مفتاح تشفير البيانات المشفّر ("مفتاح DEK المشفّر") - مفتاح DEK المشفّر، الذي يتم إنشاؤه بواسطة نظام KMS لديك

  • مفتاح تشفير المفاتيح ("مفتاح KEK") - المفتاح الرئيسي الذي تديره لتشفير مفتاح DEK لتحويله إلى مفتاح DEK مشفّر ولفك تشفير مفتاح DEK المشفّر وتحويله إلى مفتاح DEK. يظل هذا المفتاح دائمًا خارج أنظمة OpenAI.

المتطلبات الرئيسية للتنفيذ

في موفِّر الخدمة السحابية لديك

  1. أنشئ مفتاحًا جديدًا في نظام KMS السحابي لديك (Azure أو AWS أو GCP)

  2. أنشئ سياسة مخصصة ومحدودة مع أذونات التشفير/فك التشفير على نظام KMS

  3. أنشئ سياسة موثوقية (AWS)، أو هوية عبء العمل (GCP)، أو المُعرّف الرئيسي للخدمة (لـ Azure) من أجل OpenAI

  4. عيّن لـ OpenAI دورًا باستخدام السياسة المحدودة للوصول إلى نظام KMS لديك

في منصات OpenAI

ChatGPT Enterprise

أنشئ مساحة عمل معزولة في ChatGPT لأغراض الاختبار.

API

في لوحة معلومات OpenAI لديك، أنشئ مشروعًا جديدًا سيُطبَّق فيه التشفير.

الوظائف الخاصة بموفّر الخدمة

بالنسبة إلى AWS، ستقوم OpenAI بما يلي:

  • استدعاء AssumeRole باستخدام معرّف ExternalID

بالنسبة إلى GCP، ستقوم OpenAI بما يلي:

  • استدعاء نقطة نهاية STS باستخدام حساب OpenAI على GCP

  • استخدام رمز وصول GCP لاستدعاء التشفير/فك التشفير على نظام KMS لديك.

بالنسبة إلى Azure، ستقوم OpenAI بما يلي:

  • طلب رمز وصول لخزينة Azure الخاصة بوحدة Tenant لديك

  • استخدام رمز الوصول هذا لاستدعاء التشفير/فك التشفير على Key Vault الخاص بك.

المعلومات التي تحتاجها من OpenAI

المصادقة

سيتعيّن عليك التعرّف على رمزي الهوية الموحدة الخاص بـ OpenAI لدى كل من AWS وGCP. أما بالنسبة إلى Azure، ستحتاج إلى التعرّف على معرّف التطبيق الخاص بـ OpenAI لتسجيل التطبيق الخاص بها.

ملخص معلمات المصادقة

الكيان الرئيسي لـ OpenAI AWSarn:aws:iam::790389265272:role/EnterpriseKeyManagement
معرّف حساب خدمة OpenAI على GCP105900137572174660365
معرّف تطبيق OpenAI Azure20a14814-5ab7-4612-a671-1382b412bf93

المعلومات المطلوبة في أثناء التنفيذ بناءً على موفِّر الخدمة السحابية التابع له

  • بالنسبة إلى AWS، يجب عليك إعداد سياسة موثوقية تتعرّف على:

    • المُعرّف الرئيسي في OpenAI (رقم الحساب + الدور)

    • معرّف ExternalID هو معرّف مشروعك لدى OpenAI

  • بالنسبة إلى GCP، يجب عليك إعداد هوية عبء العمل تتعرّف على:

    • معرّف حساب الخدمة الخاص بـ OpenAI

    • جمهور يمثّل معرّف مشروع OpenAI الخاص بك

  • بالنسبة إلى Azure ، يجب عليك إنشاء المُعرّف الرئيسي للخدمة في خزينة Azure الخاصة بوحدة Tenant لديك من أجل تسجيل تطبيق OpenAI

    • أنشئ واحدًا لمعرّف عميل التطبيق لدى OpenAI‏: 20a14814-5ab7-4612-a671-1382b412bf9

    • يمكنك القيام بذلك عن طريق النشر إلى نقطة النهاية https://graph.microsoft.com/v1.0/servicePrincipals .

التخويل

سيتعيّن عليك إنشاء سياسة تتيح لهوية OpenAI الحصول على وصول محدود إلى نظام KMS الخاص بك. 

AWSGCPAzure
kms:Decryptkms:Encryptcloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncryptMicrosoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action

أخرى

في Azure، بالنسبة إلى نوع المفتاح (خوارزمية تشفير المفتاح)، حدّد RSA، وليس EC.

المعلومات التي تحتاجها OpenAI منك

اتبع التعليمات الواردة في هذا المستند لتسجيل نظام KMS الخاص بك لدى OpenAI. ونستعرض في ما يلي ملخّصًا للمعلمات التي ستحتاج إلى تقديمها.

  1. متعلق بالمصادقة

    1. AWS

      1. معرّف ARN لدور IAM - الدور الذي ستتولاه OpenAI (مثال: arn:aws:iam::123456789:role/role-name)

      2. معرّف ExternalID - معرّف منظمتك لدى OpenAI

    2. GCP

      1. رقم مشروع هوية عبء العمل (مثال: 123456789)

      2. معرّف مجموعة هوية عبء العمل

      3. معرّف موفّر هوية عبء العمل

      4. الجمهور المسموح به: معرّف منظمتك لدى OpenAI

    3. Azure

      1. معرّف Tenant

AWSGCPAzure
متعلق بالمصادقة معرّف Tenant
متعلق بنظام KMSمعرّف ARN لنظام KMS - (على سبيل المثال: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID)معرّف المشروع في نظام KMS (على سبيل المثال: adjective-noun-12345)اسم حلقة مفتاح نظام KMSاسم مفتاح نظام KMSموقع مفتاح نظام KMS (مثال: us-east1)معرّف URI للخزينة (على سبيل المثال: https://your-vault-name.vault.azure.net/‎)اسم المفتاح

بعد تسجيل نظام KMS الخاص بك لدى OpenAI، تابع الإرشادات الواردة في المستند لتفعيل إعداد نظام EKM الخاص بك في مشروع واجهة API. أنشئ مشروع OpenAI API جديدًا لأغراض الاختبار.

أدلة التنفيذ الخاصة بموفّر الخدمة

للحصول على إرشادات تفصيلية خطوة بخطوة، راجع الروابط المقابلة أدناه؛ علمًا بأنها تركز على متطلبات التكامل مع OpenAI، وليست مقصودة لتكون دليلًا شاملًا لبيئتك الكاملة

الميزات غير المدعومة في حال تفعيل نظام EKM

في هذا الإصدار الأوّلي، لن تكون الميزات التالية متاحة عند تفعيل نظام EKM:

  • التطبيقات المزودة بميزة المزامنة

  • ميزات غير متوفرة على نطاق واسع (مثل أي شيء لا يزال في النسخة التجريبية/ألفا)

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