അവലോകനം
നിങ്ങൾ നിയന്ത്രിക്കുന്ന മാസ്റ്റർ കീ ഉപയോഗിച്ച് ഡാറ്റ എൻക്രിപ്റ്റ് ചെയ്യാൻ Enterprise Key Management (EKM) OpenAI-യെ അനുവദിക്കുന്നു. നിങ്ങളുടെ KMS-ൽ OpenAI-ക്ക് പരിമിത അനുമതികൾ നൽകുന്നതിനായി നിങ്ങളുടെ 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 എന്നതിലേക്ക് പോകുക. OpenAI-യുടെ ഫെഡറേറ്റഡ് ഐഡന്റിറ്റി നിങ്ങൾ അംഗീകരിച്ച അതേ GCP പ്രോജക്റ്റിൽ തന്നെ നിങ്ങളുടെ KMS സൃഷ്ടിക്കണമെന്നില്ല; എന്നാൽ, പ്രോജക്റ്റുകൾ വ്യത്യസ്തമാണെങ്കിൽ, KMS ഉൽപ്പന്നം രണ്ട് പ്രോജക്റ്റുകളിലും കുറഞ്ഞത് പ്രവർത്തനക്ഷമമാക്കിയിരിക്കണം.
3. ഒരു പുതിയ KMS കീ സൃഷ്ടിക്കുക
Security -> Data Protection > Key Management എന്നതിലേക്ക് പോകുക
Overview ടാബിന് കീഴിൽ Create key ring ക്ലിക്ക് ചെയ്യുക
നിങ്ങളുടെ key ring-ിന് ഏതെങ്കിലും പേര് തിരഞ്ഞെടുക്കുക
Purpose and algorithm-ന്, Symmetric encrypt/decrypt തിരഞ്ഞെടുക്കുക

നിങ്ങൾ key ring സൃഷ്ടിച്ചുകഴിഞ്ഞാൽ, അത് Key Rings ടാബിൽ ലിസ്റ്റ് ചെയ്തിരിക്കണം. key ring-ിൽ ക്ലിക്ക് ചെയ്യുക.
key ring വിശദാംശങ്ങളിൽ, Create Key ക്ലിക്ക് ചെയ്യുക
നിങ്ങളുടെ കീയിന് ഏതെങ്കിലും പേര് തിരഞ്ഞെടുക്കുക
4. KMS-ൽ എൻക്രിപ്റ്റ്/ഡീക്രിപ്റ്റ് പ്രവർത്തനങ്ങൾക്കായി പരിമിത റോൾ സൃഷ്ടിക്കുക
IAM & Admin -> Roles -> Create role എന്നതിലേക്ക് പോകുക
റോൾ ശീർഷകത്തിനും ID-ക്കും എന്തെങ്കിലും നൽകുക
അനുമതികൾ ചേർക്കുക ക്ലിക്ക് ചെയ്ത്, തുടർന്ന് താഴെ പറയുന്നവ ചേർക്കുക
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. നിങ്ങളുടെ സ്വന്തം സുരക്ഷാ രീതികൾക്കനുസരിച്ച് അധിക നിയന്ത്രണങ്ങൾ പ്രയോഗിക്കുക
EKM സജ്ജീകരിക്കാൻ OpenAI-ക്ക് ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ വിവരങ്ങൾ മുകളിലാണ്. നിങ്ങളുടെ KMS-ൽ എൻക്രിപ്റ്റ്, ഡീക്രിപ്റ്റ് പ്രവർത്തനങ്ങൾ വിളിക്കാൻ OpenAI-ക്ക് കഴിയുന്നിടത്തോളം, നിങ്ങളുടെ ആഭ്യന്തര സുരക്ഷാ രീതികൾക്കനുസരിച്ച് അധിക കീ നയങ്ങളോ നിയന്ത്രണങ്ങളോ പ്രയോഗിക്കാൻ നിങ്ങൾക്ക് സ്വാതന്ത്ര്യമുണ്ട്. താഴെ വിവരിച്ചിരിക്കുന്ന 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 റഫറൻസിലെ നിർദ്ദേശങ്ങൾ പിന്തുടരുക: മാനേജ്മെന്റ് APIയിലെ ബാഹ്യ കീകൾ
ആദ്യം, നിങ്ങളുടെ ബാഹ്യ കീ OpenAI ഓർഗനൈസേഷൻ തലത്തിൽ രജിസ്റ്റർ ചെയ്യുക, ഇത് ഒരു ബാഹ്യ കീ ID ജനറേറ്റ് ചെയ്യും.
ഈ ഘട്ടത്തിൽ, നിങ്ങളുടെ KMS-ലേക്ക് ഞങ്ങൾക്ക് പ്രാമാണീകരിക്കാനാകുന്നുവെന്ന് പരിശോധിച്ച് GCP-യിലെ നിങ്ങളുടെ സജ്ജീകരണം ഞങ്ങൾ സാധൂകരിക്കും.
ഇത് ഇതുവരെ നിങ്ങളുടെ 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": "Some Project",
"external_key_id": "extkey_xxxx"
}'