جائزہ
Enterprise Key Management (EKM) OpenAI کو آپ کے زیرِ کنٹرول ماسٹر کلید استعمال کر کے ڈیٹا کو خفیہ کرنے کی اجازت دیتا ہے. یہ دستاویز دکھاتی ہے کہ OpenAI کو آپ کے KMS پر محدود اجازتیں دینے کے لیے اپنا GCP اکاؤنٹ کیسے سیٹ اپ کریں.

مراحل
1. OpenAI کے لیے ایک فیڈریٹڈ شناخت بنائیں
OpenAI کی ملکیت والے GCP اکاؤنٹ سے OpenAI ایک شناختی ٹوکن جاری کرے گا جو کچھ اس طرح نظر آتا ہے.
azp اور sub، GCP میں OpenAI کا سروس اکاؤنٹ ID ہیں
aud آپ کی OpenAI تنظیم کا ID ہے. آپ کوئی دوسرا آڈینس بھی چن سکتے ہیں، جیسے آپ کا OpenAI پروجیکٹ ID - نیچے دی گئی ہدایات دیکھیں
{
"aud": "org-xxxx",
"azp": "105900137572174660365",
"exp": 1747876928,
"iat": 1747873328,
"iss": "https://accounts.google.com",
"sub": "105900137572174660365"
}یہ مرحلہ اس شناختی ٹوکن کے دعووں کو پہچانتا ہے اور اس شناختی ٹوکن کے فراہم کیے جانے پر آپ کے GCP STS کو ایک رسائی ٹوکن جاری کرنے کے قابل بناتا ہے.
IAM & Admin -> Workload Identity Federation پر جائیں اور Create Pool پر کلک کریں

Create an identity pool, مرحلے میں، pool name. کے لیے کچھ بھی درج کریں
Add a provider to pool مرحلے میں:
Select a provider میں، OpenID Connect (OIDC) منتخب کریں
provider name کے لیے کچھ بھی درج کریں.
Issuer (URL) سیکشن میں، https://accounts.google.com درج کریں
Audiences سیکشن میں
Allowed audiences منتخب کریں
وہ آڈینس درج کریں جس کی نشاندہی OpenAI کو آپ کو ٹوکن دیتے وقت کرنی چاہیے.
ChatGPT یا API کے لیے: آپ OpenAI API organization ID (org-xxx) ڈال سکتے ہیں
API کے لیے: زیادہ باریکی کے لیے آپ ایک مخصوص API project id ڈال سکتے ہیں.

Attribute mapping سیکشن میں
google.subject کے لیے assertion.sub درج کریں

Attribute conditions سیکشن میں
اب آپ کو https://console.cloud.google.com/iam-admin/workload-identity-pools صفحے میں اپنا workload identity pool اور workload identity provider درج نظر آنا چاہیے
Workload identity pool id

Workload identity provider ID

2. یقینی بنائیں کہ KMS فعال ہے
KMS کو فعال کرنے کے لیے https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview پر جائیں. آپ کے لیے اپنا KMS اسی GCP پروجیکٹ میں بنانا ضروری نہیں ہے جہاں آپ نے OpenAI کی فیڈریٹڈ شناخت کو پہچانا تھا؛ تاہم، اگر پروجیکٹس مختلف ہوں، تو KMS پروڈکٹ کم از کم دونوں پروجیکٹس میں فعال ہونا چاہیے.
3. ایک نئی KMS کلید بنائیں
Security -> Data Protection > Key Management پر جائیں
Overview ٹیب کے تحت Create key ring پر کلک کریں
اپنے key ring کے لیے کوئی بھی نام منتخب کریں
Purpose اور algorithm کے لیے، Symmetric encrypt/decrypt منتخب کریں

key ring بنانے کے بعد، اسے Key Rings ٹیب میں درج ہونا چاہیے. key ring پر کلک کریں.
key ring کی تفصیلات میں، Create Key پر کلک کریں
اپنی کلید کے لیے کوئی بھی نام منتخب کریں
4. KMS پر خفیہ کاری/غیر خفیہ کاری کی کارروائیوں کے لیے ایک محدود کردار بنائیں
IAM & Admin -> Roles -> Create role پر جائیں
کردار کے عنوان اور ID کے لیے کچھ بھی درج کریں
Add Permissions پر کلک کریں، پھر درج ذیل شامل کریں
cloudkms.cryptoKeyVersions.useToDecrypt
cloudkms.cryptoKeyVersions.useToEncrypt
5. خفیہ کاری/غیر خفیہ کاری کی کارروائیوں کے لیے OpenAI کی فیڈریٹڈ شناخت کو محدود KMS کردار تفویض کریں
Security -> Data Protection > Key Management پر جائیں
اپنے key ring نام پر کلک کریں، پھر کلید کی تفصیلات کے صفحے تک پہنچنے کے لیے اپنے key name پر کلک کریں.
Permissions ٹیب پر کلک کریں، پھر Grant Access بٹن پر کلک کریں

OpenAI فیڈریٹڈ شناخت کو اس حسب ضرورت کردار سے منسلک کریں جو آپ نے پہلے بنایا تھا
Add principals سیکشن کے لیے، principal://iam.googleapis.com/projects/<YOUR_GCP_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<YOUR_GCP_WORKLOAD_IDENTITY_POOL>/subject/105900137572174660365 درج کریں
Assign roles سیکشن میں، محدود EKM اجازتوں کے لیے پچھلے مرحلے میں بنایا گیا حسب ضرورت کردار منتخب کریں
6. اپنی سیکیورٹی پریکٹسز کے مطابق کوئی بھی اضافی پابندیاں لاگو کریں
اوپر وہ کم از کم مطلوبہ معلومات ہیں جن کی OpenAI کو EKM سیٹ اپ کرنے کے لیے ضرورت ہے. آپ اپنی داخلی سیکیورٹی پریکٹسز کے مطابق اضافی کلیدی پالیسیاں یا پابندیاں لاگو کرنے کے لیے آزاد ہیں، بشرطیکہ OpenAI آپ کے KMS پر خفیہ کاری اور غیر خفیہ کاری کی کارروائیاں کال کر سکے. جب آپ نیچے بیان کردہ OpenAI کے ساتھ کلید رجسٹریشن اینڈپوائنٹ کو کال کریں گے، تو ہم آپ کے سیٹ اپ کی توثیق کریں گے.
اوپر کے مراحل مکمل کرنے کے بعد
ChatGPT Enterprise
براہ کرم اپنے OpenAI رابطے سے رابطہ کریں اور درج ذیل شیئر کریں:
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_location": "us-east1"
وہ علاقہ جہاں آپ کے Key Management System کی ماسٹر کلید واقع ہے
ہم آپ کی ChatGPT تنظیم/ورک اسپیس کے لیے EKM فعال کریں گے.
API
اپنی خارجی کلید OpenAI کے ساتھ رجسٹر کریں
اس API حوالہ میں دی گئی ہدایات پر عمل کریں: Management API میں خارجی کلیدیں
پہلے، اپنی خارجی کلید OpenAI تنظیم کی سطح پر رجسٹر کریں، جس سے ایک external key id بنے گا.
اس مرحلے میں، ہم یہ چیک کر کے GCP پر آپ کے سیٹ اپ کی توثیق کریں گے کہ ہم آپ کے KMS سے تصدیق کر سکتے ہیں.
یہ ابھی آپ کے OpenAI پروجیکٹ میں EKM شامل نہیں کرے گا.
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "gcp",
"name": "GCP EKM Config",
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"audience": <آپ کی org id یا project id>,
"kms_project_id": "adjective-noun-12345",
"kms_key_name": "openai-kms-key",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_location": "us-east1"
}'پھر، خارجی کلید سے وابستہ ایک OpenAI پروجیکٹ بنائیں. اس کے بعد، آپ کے پروجیکٹ پر EKM فعال ہو جاتا ہے.
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects" \
-d '{
"name": "کچھ پروجیکٹ",
"external_key_id": "extkey_xxxx"
}'