Шолу
Enterprise Key Management (EKM) OpenAI-ға деректерді сіз басқаратын басты кілт арқылы шифрлауға мүмкіндік береді. Бұл құжат OpenAI-ға KMS жүйеңізде шектеулі рұқсаттар беру үшін GCP есептік жазбаңызды қалай баптау керегін көрсетеді.

Қадамдар
1. OpenAI үшін федеративтік сәйкестендіру жасаңыз
OpenAI өзіне тиесілі GCP есептік жазбасынан шамамен осылай көрінетін сәйкестендіру токенін шығарады.
azp және sub — OpenAI қызметтік есептік жазбасының GCP ішіндегі 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 ұйымының 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 жүйесін OpenAI федеративтік сәйкестендіруін таныған GCP жобасында жасау міндетті емес; алайда жобалар әртүрлі болса, KMS өнімі кемінде екі жобада да қосылған болуы керек.
3. Жаңа KMS кілтін жасаңыз
Security -> Data Protection > Key Management бөліміне өтіңіз
Overview қойындысында Create key ring түймесін басыңыз
Кілттер сақинасы үшін кез келген атауды таңдаңыз
Purpose және algorithm үшін Symmetric encrypt/decrypt параметрін таңдаңыз

Кілттер сақинасын жасағаннан кейін, ол Key Rings қойындысында көрсетілуі керек. Кілттер сақинасын басыңыз.
Кілттер сақинасының мәліметтерінде 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 ұйымы деңгейінде тіркеңіз; бұл сыртқы кілт 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 конфигі",
"workload_identity_project_number": "123456789012",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role",
"audience": <ұйым идентификаторыңыз немесе жоба идентификаторыңыз>,
"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"
}'