OpenAI
این صفحه به‌صورت ماشینی ترجمه شده است. مقاله اصلی انگلیسی را مشاهده کنید.

نمای کلی مدیریت کلید سازمانی (EKM) در OpenAI

بیاموزید EKM چگونه کار می‌کند، کدام ارائه‌دهندگان پشتیبانی می‌شوند و از کجا باید شروع کنید

به‌روزرسانی: 5 days ago

نمای کلی

مدیریت کلید سازمانی (EKM) به شما امکان می‌دهد محتوای مشتریان خود را در OpenAI با کلیدهایی که توسط سامانه مدیریت کلید (KMS) خارجی خودتان مدیریت می‌شوند رمزگذاری کنید؛ این قابلیت هم برای ChatGPT Enterprise و هم برای API در دسترس است.

OpenAI از رمزگذاری Bring Your Own Key (BYOK) با حساب‌های خارجی در AWS KMS، Google Cloud (GCP) و Azure Key Vault پشتیبانی می‌کند.

در حال حاضر، پیاده‌سازی EKM به فضاهای کاری Enterprise و Edu که نماینده حساب مشخصی در OpenAI دارند محدود است.

نحوه کار رمزگذاری EKM در OpenAI

جریان کلی

  1. ما یک Data Encryption Key (DEK) برای ارائه‌دهنده ابر شما تولید می‌کنیم.

  2. KMS ابری شما یک Key Encryption Key (KEK) اصلی را مدیریت می‌کند که یا در ابر شما ذخیره شده یا به‌صورت خارجی نگهداری می‌شود. نحوه پیاده‌سازی به انتخاب شماست.

  3. ما از ابر شما درخواست می‌کنیم DEK را رمزگذاری کند تا یک encrypted DEK (eDEK) به دست آید. اگر KEK شما به‌صورت خارجی ذخیره شده باشد، ابر شما فقط یک پرش اضافه به مخزن خارجی‌تان انجام می‌دهد؛ مرحله‌ای که برای OpenAI شفاف نیست.

رمزگذاری

هنگام رمزگذاری، داده‌های شما با DEK رمزگذاری می‌شوند و eDEK به‌عنوان فراداده روی فایل ذخیره می‌شود.

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

رمزگشایی

هنگام رمزگشایی، درخواست می‌کنیم eDEK توسط KMS ابری شما به DEK رمزگشایی شود، و سپس داده‌ها را با DEK رمزگشایی می‌کنیم.

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

اصطلاحات کلیدی

  • Data Encryption Key (DEK) - کلیدی که داده‌های شما را رمزگذاری می‌کند. 

  • Encrypted Data Encryption Key (eDEK) - DEK رمزگذاری‌شده که توسط KMS شما تولید می‌شود

  • Key Encryption Key (KEK) - کلید اصلی‌ای که شما مدیریت می‌کنید و DEK را به eDEK رمزگذاری و eDEK را به DEK رمزگشایی می‌کند. این کلید همیشه خارج از سامانه‌های OpenAI باقی می‌ماند.

الزامات کلی پیاده‌سازی

در ارائه‌دهنده ابر شما

  1. یک کلید جدید در KMS ابری خود (Azure، AWS یا GCP) ایجاد کنید

  2. یک policy سفارشی و محدود با مجوزهای Encrypt/Decrypt روی KMS ایجاد کنید

  3. برای OpenAI یک trust policy (AWS)، یک workload identity (GCP) یا یک service principal (برای Azure) ایجاد کنید

  4. برای دسترسی به KMS خود، یک role با policy محدود به OpenAI اختصاص دهید

در پلتفرم‌های OpenAI

ChatGPT Enterprise

برای اهداف آزمایشی، یک فضای کاری sandbox در ChatGPT ایجاد کنید.

API

در داشبورد OpenAI خود، یک پروژه جدید ایجاد کنید که رمزگذاری در آن اعمال خواهد شد.

عملکردهای مخصوص ارائه‌دهنده

برای AWS، OpenAI این کار را انجام می‌دهد:

  • AssumeRole را با یک ExternalID فراخوانی می‌کند

برای GCP، OpenAI این کار را انجام می‌دهد:

  • نقطه پایان STS شما را از یک حساب GCP متعلق به OpenAI فراخوانی می‌کند

  • از توکن دسترسی GCP برای فراخوانی encrypt/decrypt روی KMS شما استفاده می‌کند.

برای Azure، OpenAI این کار را انجام می‌دهد:

  • برای vault مستاجر Azure شما یک توکن دسترسی درخواست می‌کند

  • از آن توکن دسترسی برای فراخوانی encrypt/decrypt روی Key Vault شما استفاده می‌کند.

اطلاعاتی که از OpenAI نیاز دارید

احراز هویت

برای AWS و GCP باید توکن‌های هویت فدره‌شده OpenAI را شناسایی کنید. برای Azure، باید شناسه برنامه OpenAI را برای ثبت برنامه آن شناسایی کنید.

خلاصه پارامترهای احراز هویت

اصل AWS در OpenAIarn:aws:iam::790389265272:role/EnterpriseKeyManagement
شناسه حساب سرویس GCP در OpenAI105900137572174660365
شناسه برنامه Azure در OpenAI20a14814-5ab7-4612-a671-1382b412bf93

اطلاعات لازم در طول پیاده‌سازی بر اساس ارائه‌دهنده ابری شما

  • برای AWS، باید یک سیاست اعتماد تنظیم کنید که موارد زیر را تشخیص دهد:

    • principal متعلق به OpenAI (شماره حساب + نقش)

    • یک ExternalID که همان شناسه پروژه OpenAI شماست

  • برای GCP باید یک workload identity تنظیم کنید که موارد زیر را تشخیص دهد:

    • شناسه حساب سرویس OpenAI

    • یک audience که همان شناسه پروژه OpenAI شماست

  • برای Azure باید برای ثبت برنامه OpenAI یک service principal در مستأجر Azure خود ایجاد کنید

    • برای شناسه کلاینت برنامه OpenAI یکی ایجاد کنید: 20a14814-5ab7-4612-a671-1382b412bf9

    • می‌توانید این کار را با ارسال درخواست به نقطه پایان https://graph.microsoft.com/v1.0/servicePrincipals انجام دهید.

مجوزدهی

باید policyای ایجاد کنید که به هویت 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. IAM Role ARN - نقشی که OpenAI بر عهده می‌گیرد (مثال: arn:aws:iam::123456789:role/role-name)

      2. ExternalID - شناسه سازمان OpenAI شما

    2. GCP

      1. شماره پروژه Workload Identity (مثال: 123456789)

      2. شناسه Workload Identity Pool

      3. شناسه Workload Identity Provider

      4. مخاطب مجاز: شناسه سازمان OpenAI شما

    3. Azure

      1. شناسه مستأجر

AWSGCPAzure
مرتبط با احراز هویت شناسه مستأجر
مرتبط با KMSKMS ARN - (مثال: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID)شناسه پروژه KMS (مثال: adjective-noun-12345)نام key ring در KMSنام کلید KMSمکان کلید KMS (مثال: us-east1)URI خزانه (مثال: https://your-vault-name.vault.azure.net/)نام کلید

پس از ثبت KMS خود در OpenAI، برای فعال‌سازی پیکربندی EKM در یک پروژه API، دستورالعمل‌های سند را ادامه دهید. برای اهداف آزمایشی، یک پروژه API جدید در OpenAI ایجاد کنید.

راهنماهای پیاده‌سازی ویژه هر ارائه‌دهنده

برای راهنمایی گام‌به‌گام، پیوندهای مربوطه را در زیر ببینید. لطفاً توجه داشته باشید که این موارد بر الزامات یکپارچه‌سازی با OpenAI تمرکز دارند و قرار نیست راهنمای جامعی برای کل محیط شما باشند

ویژگی‌های پشتیبانی‌نشده در صورت فعال بودن EKM

در صورت فعال بودن EKM، ویژگی‌های زیر در دسترس نیستند:

  • ویژگی‌هایی که به‌طور عمومی در دسترس نیستند، از جمله ویژگی‌های در نسخه بتا یا آلفا.

آیا این مقاله مفید بود؟