সংক্ষিপ্ত বিবরণ
Enterprise Key Management (EKM) আপনাকে OpenAI-এ আপনার গ্রাহক কনটেন্ট এনক্রিপ্ট করতে দেয়, যেখানে কী ব্যবস্থাপনা করা হয় আপনার নিজস্ব external Key Management System (KMS) দিয়ে। এটি ChatGPT Enterprise এবং API উভয়ের জন্য উপলভ্য.
OpenAI AWS KMS, Google Cloud (GCP) এবং Azure Key Vault-এ external account সহ Bring Your Own Key (BYOK) এনক্রিপশন সমর্থন করে.
এই মুহূর্তে, EKM বাস্তবায়ন শুধুমাত্র Enterprise এবং Edu ওয়ার্কস্পেসে সীমাবদ্ধ, যাদের জন্য নির্ধারিত OpenAI account representative রয়েছে.
OpenAI EKM এনক্রিপশন কীভাবে কাজ করে
উচ্চ-স্তরের প্রবাহ
আমরা আপনার cloud provider-এর জন্য একটি Data Encryption Key (DEK) তৈরি করি.
আপনার cloud KMS একটি master Key Encryption Key (KEK) পরিচালনা করে, যা আপনার cloud-এর মধ্যে বা বাহ্যিকভাবে সংরক্ষিত থাকতে পারে। বাস্তবায়ন আপনার ওপর নির্ভর করে.
একটি encrypted DEK (eDEK) পেতে আমরা আপনার cloud-কে DEK এনক্রিপ্ট করার অনুরোধ করি। যদি আপনার KEK বাহ্যিকভাবে সংরক্ষিত থাকে, তাহলে আপনার cloud শুধু আপনার external store-এ অতিরিক্ত একটি hop করে, যা OpenAI-এর কাছে অস্বচ্ছ থাকে.
এনক্রিপশন
এনক্রিপশনের সময়, আপনার ডেটা DEK দিয়ে এনক্রিপ্ট করা হয় এবং eDEK ফাইলের metadata হিসেবে সংরক্ষণ করা হয়.

ডিক্রিপশন
ডিক্রিপশনের সময়, আমরা আপনার cloud KMS-কে eDEK ডিক্রিপ্ট করে DEK-এ রূপান্তর করার অনুরোধ করি, এবং আমরা DEK দিয়ে ডেটা ডিক্রিপ্ট করি.

মূল পরিভাষা
Data Encryption Key (DEK) - যে কী আপনার ডেটা এনক্রিপ্ট করে.
Encrypted Data Encryption Key (eDEK) - এনক্রিপ্ট করা DEK, যা আপনার KMS তৈরি করে
Key Encryption Key (KEK) - আপনার ব্যবস্থাপিত master key, যা DEK -> eDEK এনক্রিপ্ট করে এবং eDEK -> DEK ডিক্রিপ্ট করে। এই কী সবসময় OpenAI সিস্টেমের বাইরে থাকে.
বাস্তবায়নের জন্য উচ্চ-স্তরের প্রয়োজনীয়তা
আপনার 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-এ একটি নতুন project তৈরি করুন, যেখানে এনক্রিপশন প্রয়োগ করা হবে.
প্রদানকারী-নির্দিষ্ট ফাংশন
AWS-এর জন্য, OpenAI করবে:
একটি ExternalID সহ AssumeRole কল
GCP-এর জন্য, OpenAI করবে:
একটি OpenAI GCP account থেকে আপনার STS এন্ডপয়েন্ট কল
আপনার KMS-এ encrypt/decrypt কল করতে GCP access token ব্যবহার
Azure-এর জন্য, OpenAI করবে:
আপনার Azure tenant-এর vault-এর জন্য একটি access token অনুরোধ
আপনার Key Vault-এ encrypt/decrypt কল করতে সেই access token ব্যবহার
OpenAI থেকে আপনার প্রয়োজনীয় তথ্য
প্রমাণীকরণ
AWS এবং GCP-এর জন্য আপনাকে OpenAI-এর federated identity token-গুলোকে স্বীকৃতি দিতে হবে। 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-এর জন্য, আপনাকে একটি trust policy সেট আপ করতে হবে যা শনাক্ত করে:
OpenAI-এর প্রিন্সিপাল (অ্যাকাউন্ট নম্বর + ভূমিকা)
একটি ExternalID, যা আপনার OpenAI প্রজেক্ট id
GCP-এর জন্য, আপনাকে একটি workload identity সেট আপ করতে হবে যা শনাক্ত করে:
OpenAI-এর সার্ভিস অ্যাকাউন্ট ID
একটি অডিয়েন্স, যা আপনার OpenAI প্রজেক্ট id
Azure-এর জন্য, OpenAI-এর অ্যাপ রেজিস্ট্রেশনের জন্য আপনাকে আপনার Azure টেন্যান্টে একটি service principal তৈরি করতে হবে
OpenAI-এর application client 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) হিসেবে EC নয়, RSA নির্বাচন করুন.
আপনার কাছ থেকে OpenAI-এর প্রয়োজনীয় তথ্য
OpenAI-এর সাথে আপনার KMS নিবন্ধন করতে এই নথির নির্দেশাবলী অনুসরণ করুন. আপনাকে যে প্যারামিটারগুলো দিতে হবে তার একটি সারাংশ এখানে দেওয়া হলো.
প্রমাণীকরণ-সম্পর্কিত
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 key ring nameKMS key nameKMS key location (উদাহরণ: us-east1) | Vault URI (উদাহরণ: https://your-vault-name.vault.azure.net/)Key Name |
OpenAI-এর সাথে আপনার KMS নিবন্ধন করার পরে, একটি API প্রজেক্টে আপনার EKM কনফিগ সক্রিয় করতে নথির নির্দেশাবলী অনুসরণ করা চালিয়ে যান. পরীক্ষার উদ্দেশ্যে একটি নতুন OpenAI API প্রজেক্ট তৈরি করুন.
প্রোভাইডার-নির্দিষ্ট বাস্তবায়ন গাইড
ধাপে ধাপে নির্দেশনার জন্য, নিচের সংশ্লিষ্ট লিংকগুলো দেখুন. অনুগ্রহ করে মনে রাখুন, এগুলো OpenAI-এর সাথে ইন্টিগ্রেশনের প্রয়োজনীয়তার ওপর কেন্দ্রীভূত, এবং আপনার সম্পূর্ণ পরিবেশের জন্য একটি পূর্ণাঙ্গ গাইড হিসেবে ব্যবহারের উদ্দেশ্যে নয়.
EKM সক্রিয় থাকলে অসমর্থিত ফিচারসমূহ
এই প্রাথমিক রিলিজে, EKM সক্রিয় থাকলে নিম্নলিখিত ফিচারগুলো উপলভ্য নয়:
সিঙ্কসহ Apps
যে ফিচারগুলো এখনও Generally Available নয় (অর্থাৎ, যা এখনও beta/alpha-তে আছে)
