جائزہ
Enterprise Key Management (EKM) آپ کو OpenAI میں اپنے کسٹمر مواد کو اپنے external Key Management System (KMS) کے زیرِ انتظام keys سے encrypt کرنے کی سہولت دیتا ہے، اور یہ ChatGPT Enterprise اور API دونوں کے لیے دستیاب ہے.
OpenAI AWS KMS، Google Cloud (GCP)، اور Azure Key Vault میں external accounts کے ساتھ Bring Your Own Key (BYOK) encryption کی حمایت کرتا ہے.
اس وقت، EKM کا نفاذ Enterprise اور Edu ورک اسپیسز تک محدود ہے جن کے پاس OpenAI کا نامزد اکاؤنٹ نمائندہ موجود ہو۔
OpenAI EKM encryption کیسے کام کرتی ہے
اعلیٰ سطحی بہاؤ
ہم آپ کے cloud provider کے لیے ایک Data Encryption Key (DEK) تیار کرتے ہیں۔
آپ کا cloud KMS ایک master Key Encryption Key (KEK) کو manage کرتا ہے، جو یا تو آپ کے cloud کے اندر محفوظ ہوتی ہے یا بیرونی طور پر۔ اس کا implementation آپ پر منحصر ہے۔
ہم آپ کے cloud سے DEK کی encryption کی درخواست کرتے ہیں، تاکہ ایک encrypted DEK (eDEK) حاصل ہو۔ اگر آپ کی KEK بیرونی طور پر محفوظ ہے، تو آپ کا cloud بس آپ کے external store تک ایک اضافی hop کرتا ہے، ایسے مرحلے میں جو OpenAI کے لیے opaque ہوتا ہے۔
انکرپشن
انکرپشن کے وقت، آپ کے ڈیٹا کو DEK کے ساتھ encrypt کیا جاتا ہے اور eDEK کو فائل پر metadata کے طور پر محفوظ کیا جاتا ہے۔

ڈی کرپشن
ڈی کرپشن کے وقت، ہم درخواست کرتے ہیں کہ eDEK کو آپ کے cloud KMS کے ذریعے DEK میں decrypt کیا جائے، اور ہم DEK کے ساتھ ڈیٹا کو decrypt کرتے ہیں۔

اہم اصطلاحات
Data Encryption Key (DEK) - وہ key جو آپ کے ڈیٹا کو encrypt کرتی ہے۔
Encrypted Data Encryption Key (eDEK) - encrypted DEK، جو آپ کے KMS کے ذریعے تیار کی جاتی ہے
Key Encryption Key (KEK) - وہ master key جسے آپ manage کرتے ہیں، جو DEK -> eDEK کو encrypt اور eDEK -> DEK کو decrypt کرتی ہے۔ یہ key ہمیشہ OpenAI systems سے باہر رہتی ہے۔
نفاذ کے لیے اعلیٰ سطحی تقاضے
اپنے cloud provider میں
اپنے cloud KMS (Azure، AWS، یا GCP) میں ایک نئی key بنائیں
KMS پر Encrypt/Decrypt permissions کے ساتھ ایک custom، محدود policy بنائیں
OpenAI کے لیے ایک trust policy (AWS)، ایک workload identity (GCP) یا ایک service principal (Azure کے لیے) بنائیں
اپنے KMS تک رسائی کے لیے محدود policy کے ساتھ OpenAI کو ایک role تفویض کریں
OpenAI پلیٹ فارمز میں
ChatGPT Enterprise
ٹیسٹنگ کے مقاصد کے لیے ایک sandbox ChatGPT ورک اسپیس بنائیں۔
API
اپنے OpenAI dashboard میں ایک نیا پروجیکٹ بنائیں جہاں encryption لاگو کی جائے گی۔
provider سے متعلق مخصوص افعال
AWS کے لیے، OpenAI یہ کرے گا:
ExternalID کے ساتھ AssumeRole کو call کرے گا
GCP کے لیے، OpenAI یہ کرے گا:
OpenAI GCP اکاؤنٹ سے آپ کے STS endpoint کو call کرے گا
آپ کے KMS پر encrypt/decrypt call کرنے کے لیے GCP access token استعمال کرے گا۔
Azure کے لیے، OpenAI یہ کرے گا:
آپ کے Azure tenant کے vault کے لیے access token کی درخواست کرے گا
آپ کے Key Vault پر encrypt/decrypt call کرنے کے لیے وہ access token استعمال کرے گا۔
OpenAI سے آپ کو درکار معلومات
توثیق
AWS اور GCP کے لیے آپ کو OpenAI کے federated identity tokens کو تسلیم کرنا ہوگا۔ Azure کے لیے، آپ کو اس کی app registration کے لیے OpenAI کی application id کو تسلیم کرنا ہوگا۔
توثیقی پیرامیٹرز کا خلاصہ
| OpenAI AWS principal | arn:aws:iam::790389265272:role/EnterpriseKeyManagement |
| OpenAI GCP service account id | 105900137572174660365 |
| OpenAI Azure application id | 20a14814-5ab7-4612-a671-1382b412bf93 |
آپ کے کلاؤڈ فراہم کنندہ کی بنیاد پر نفاذ کے دوران درکار معلومات
AWS, کے لیے آپ کو ایک ٹرسٹ پالیسی سیٹ اپ کرنی ہوگی جو ان کی شناخت کرے:
OpenAI کا پرنسپل (اکاؤنٹ نمبر + رول)
ایک ExternalID جو آپ کے OpenAI پروجیکٹ کی ID ہے
GCP کے لیے آپ کو ایک ورک لوڈ آئیڈینٹٹی سیٹ اپ کرنی ہوگی جو ان کی شناخت کرے:
OpenAI کی سروس اکاؤنٹ ID
ایک آڈینس جو آپ کے OpenAI پروجیکٹ کی ID ہے
Azure کے لیے آپ کو OpenAI کی ایپ رجسٹریشن کے لیے اپنے Azure ٹیننٹ میں ایک سروس پرنسپل بنانا ہوگا
OpenAI کی ایپلیکیشن کلائنٹ ID کے لیے ایک بنائیں: 20a14814-5ab7-4612-a671-1382b412bf9
آپ یہ کام https://graph.microsoft.com/v1.0/servicePrincipals اینڈپوائنٹ پر پوسٹ کر کے کر سکتے ہیں.
اجازت دہی
آپ کو ایک ایسی policy بنانی ہوگی جو OpenAI کی identity کو آپ کے KMS تک محدود رسائی حاصل کرنے کی اجازت دے۔
| AWS | GCP | Azure |
| kms:Decryptkms:Encrypt | cloudkms.cryptoKeyVersions.useToDecryptcloudkms.cryptoKeyVersions.useToEncrypt | Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/action |
دیگر
Azure میں، Key type (key encryption algorithm) کے لیے RSA منتخب کریں، EC نہیں۔
وہ معلومات جو OpenAI کو آپ سے درکار ہیں
اپنے KMS کو OpenAI کے ساتھ رجسٹر کرنے کے لیے اس دستاویز میں دی گئی ہدایات پر عمل کریں. یہاں ان پیرامیٹرز کا خلاصہ ہے جو آپ کو فراہم کرنے ہوں گے.
توثیق سے متعلق
AWS
IAM Role ARN - OpenAI کے سنبھالنے کے لیے رول (مثال: arn:aws:iam::123456789:role/role-name)
ExternalID - آپ کی OpenAI تنظیم کی ID
GCP
Workload Identity Project Number (مثال: 123456789)
Workload Identity Pool ID
Workload Identity Provider ID
اجازت یافتہ آڈینس: آپ کی OpenAI تنظیم کی ID
Azure
Tenant ID
| AWS | GCP | Azure | |
| توثیق سے متعلق | Tenant ID | ||
| KMS سے متعلق | KMS ARN - (مثال: arn:aws:kms:REGION:ACCOUNT_NUMBER:key:KEY_UUID) | KMS Project ID (مثال: adjective-noun-12345)KMS کی رِنگ کا نامKMS کلید کا نامKMS کلید کا مقام (مثال: us-east1) | Vault URI (مثال: https://your-vault-name.vault.azure.net/)کلید کا نام |
اپنے KMS کو OpenAI کے ساتھ رجسٹر کرنے کے بعد، کسی API پروجیکٹ پر اپنی EKM کنفگ کو فعال کرنے کے لیے دستاویز میں دی گئی ہدایات پر عمل جاری رکھیں. ٹیسٹنگ کے مقاصد کے لیے ایک نیا OpenAI API پروجیکٹ بنائیں.
فراہم کنندہ کے لیے مخصوص نفاذ کی گائیڈز
مرحلہ وار رہنمائی کے لیے، نیچے متعلقہ لنکس دیکھیں. براہ کرم نوٹ کریں کہ یہ OpenAI کے ساتھ انضمام کی ضروریات پر مرکوز ہیں، اور آپ کے مکمل ماحول کے لیے جامع گائیڈ کے طور پر مقصود نہیں ہیں.
EKM فعال ہونے پر غیر معاون خصوصیات
اگر EKM فعال ہو تو درج ذیل خصوصیات دستیاب نہیں ہوتیں:
وہ خصوصیات جو عموماً دستیاب نہیں ہوتیں، بشمول بیٹا یا الفا خصوصیات.
