OpenAI
Kjo faqe u përkthye automatikisht. Shih artikullin origjinal në anglisht.

EKM (Çelësat e jashtëm) në Management API

Mësoni si të menaxhoni çelësat e jashtëm për EKM përmes API-së së menaxhimit.

Përditësuar: 54 minutes ago

Përmbledhje

Qasja

  • Pikat fundore të EKM-së mund të përdoren në API-në e menaxhimit përmes një çelësi administratori të API-së. https://platform.openai.com/settings/organization/admin-keys (mos përdorni një çelës të zakonshëm të API-së). Çelësat e administratorit të API-së janë të disponueshëm për pronarët e organizatës.

  • Përdorni api.external_keys.write për të krijuar ose fshirë çelësa të jashtëm dhe api.external_keys.read për të listuar ose verifikuar çelësa të jashtëm. Një çelësi i duhen të dyja lejet vetëm nëse duhet të kryejë si veprime leximi, ashtu edhe shkrimi.

  • Aktualisht, duhet t'ia mundësojmë organizatës suaj qasjen në këto pika fundore përmes cilësimit të aktivizimit të funksionit. Funksioni është aktivizuar nëse shihni external_key_id në përgjigjen e pikës fundore ekzistuese për listimin e projekteve: https://api.openai.com/v1/organization/projects.

Përdorimi

Kufizime

  • Fillimisht duhet ta testoni EKM në një projekt të ri përmes API-së së menaxhimit.

  • Rekomandojmë të krijoni projekte të reja për ngarkesat tuaja të punës me EKM. Megjithatë, nëse dëshironi EKM në një projekt ekzistues, mund t'jua mundësojmë përmes cilësimit të aktivizimit të funksionit. Mbani parasysh praktikat e mëposhtme të rekomanduara përpara se të aktivizoni EKM në projektet tuaja ekzistuese në mjedisin e prodhimit.

    • Fillimisht, testoni në projektin tuaj testues të API-së me EKM të gjitha veçoritë e API-së që përdorni në mjedisin e prodhimit.

    • Aktivizojeni EKM gradualisht, në vend që ta aktivizoni njëherësh në të gjitha projektet e API-së në mjedisin e prodhimit.

endpoints të nivelit të organizatës

Regjistroni një çelës të jashtëm në organizatën tuaj

AWS

Shembull kërkese:

  • type: string - gjithmonë “aws”

  • name: string - Një emër i kuptueshëm për konfigurimin tuaj

  • role_arn: string - ARN-ja e rolit që OpenAI do të marrë në mjedisin tuaj cloud

  • kms_arn: string - ARN-ja e sistemit të menaxhimit të çelësave për çelësin kryesor që menaxhoni

  • external_id: string - ID-ja e organizatës suaj ose ID-ja e projektit të API-së

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "aws",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<12_DIGIT_ACCOUNT_NUMBER>:role/<ROLE>",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"external_id": "<your org id or project id>"
}'

Shembull përgjigjeje:

{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746175499,
"api_project_ids": [],
"type": "aws",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"external_id": "<your org id or project id>"
}

GCP

Shembull kërkese:

  • type: string - gjithmonë “gcp”,

  • name: string - Një emër i kuptueshëm për konfigurimin tuaj

  • workload_identity_project_number: string - Numri identifikues i projektit GCP ku keni regjistruar identitetin e ngarkesës së punës të OpenAI

  • workload_identity_pool_id: string - Grupi që përmban ofruesin e Workload Identity që keni regjistruar për OpenAI

  • workload_identity_provider_id: string - Ofruesi i Workload Identity që keni regjistruar për OpenAI

  • audience: string - Audienca që OpenAI duhet të dërgojë në token kur marrim një rol përmes GCP STS tuaj

  • kms_project_id: string - Emri i projektit GCP ku ndodhet KMS-ja juaj

  • kms_key_ring_name: string - Grupi i çelësave në sistemin e menaxhimit të çelësave që përmban çelësin kryesor që menaxhoni

  • kms_key_name: string - Emri i çelësit kryesor të sistemit të menaxhimit të çelësave

  • kms_key_location: string - Rajoni ku ndodhet çelësi kryesor i sistemit tuaj të menaxhimit të çelësave

Nëse KMS-ja juaj ndodhet në një projekt GCP të ndryshëm nga ai ku keni regjistruar Workload Identity të OpenAI, sigurohuni që projekti që përmban Workload Identity të OpenAI të ketë të paktën KMS të aktivizuar, duke shkuar te https://console.developers.google.com/apis/api/cloudkms.googleapis.com/overview.

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": "<your org id or 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"
}'

Shembull përgjigjeje:

{
"id": "extkey_xxxxxx",
"object": "organization.external_key",
"created_at": 1746174349,
"api_project_ids": [],
"type": "gcp",
"name": "GCP EKM Config",
"workload_identity_project_number": "123456789012",
"kms_key_ring_name": "openai-kms-key-ring",
"kms_key_name": "openai-kms-key",
"kms_key_location": "us-east1",
"audience": "<your org id or project id>",
"kms_project_id": "adjective-noun-12345",
"workload_identity_pool_id": "openai-azure",
"workload_identity_provider_id": "openai-ekm-service-role"
}

Azure

Shembull kërkese:

  • type: string - gjithmonë “azure”,

  • name: string - Një emër i kuptueshëm për konfigurimin tuaj

  • tenant_id: string - UUID-ja e instancës suaj organizative në Azure

  • vault_uri: string - URI-ja e kasafortës Azure që përmban çelësin kryesor që menaxhoni

  • key_name: string - Emri i çelësit kryesor të Azure Key Vault që menaxhoni.

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "azure",
"name": "Azure EKM Config",
"tenant_id": "<UUID>",
"vault_uri": "https://<VAULT_NAME>.vault.azure.net/",
"key_name": "org-xxx--some-key"
}'

Shembull përgjigjeje:

{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746174377,
"api_project_ids": [],
"type": "azure",
"name": "Azure EKM Config",
"tenant_id": "<UUID>",
"vault_uri": "https://<VAULT_NAME>.vault.azure.net/",
"key_name": "org-xxx--some-key"
}

Fshini një çelës të jashtëm të regjistruar në organizatën tuaj

Shënim: Mund ta fshini një çelës të jashtëm vetëm nëse nuk është i lidhur me asnjë projekt aktiv të API-së ose hapësirë pune. Nëse është i lidhur me një projekt aktiv të API-së, arkivojeni fillimisht atë projekt. Nëse është i lidhur me një hapësirë pune, çelësi nuk mund të fshihet.

Shembull kërkese

curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys/extkey_xxxx"

Shembull përgjigjeje

{
"id": "extkey_xxxxx",
"object": "organization.external_key.deleted",
"created_at": 1746127808,
"api_project_ids": [],
"type": "aws",
"account_number": "123456789012",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"name": "AWS EKM Config",
"role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>"
}

Merrni çelësat e jashtëm të regjistruar në organizatën tuaj

Shembull kërkese

curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys"

Shembull përgjigjeje

{
"object": "list",
"data": [
{
"id": "extkey_xxxx",
"object": "organization.external_key",
"created_at": 1746127808,
"api_project_ids": [],
"type": "aws",
"name": "AWS EKM Config",
"account_number": "123456789012",
"kms_arn": "arn:aws:kms:<REGION>:<ACCOUNT_NUMBER>:key/<UUID>",
"role_arn": "arn:aws:iam::<ACCOUNT_NUMBER>:role/<ROLE>"
}
],
"first_id": "extkey_xxxx",
"has_more": false,
"last_id": "extkey_xxxx"
}

Verifikoni një çelës të jashtëm

Mund ta përdorni këtë pikë fundore për të kontrolluar disa gjëra:

  • Konfigurimi i mjedisit tuaj të jashtëm cloud mbetet i vlefshëm për OpenAI pasi keni bërë ndryshime (do të shihni një përgjigje suksesi).

  • Revokimi i çelësit tuaj është kryer saktë, po përpunohet nga OpenAI dhe do të hyjë në fuqi pas skadimit të afateve 1-orëshe të ruajtjes në memorien e përkohshme (TTL) (do të shihni një përgjigje gabimi).

Shembull kërkese

curl -X POST -H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys/extkey_xxx/validate"

Shembull përgjigjeje

{
"status": "success"
}

Ose është shfaqur një gabim nga ofruesi i cloud-it.

endpoints të nivelit të projektit

Krijoni një projekt të ri me ID-në e një çelësi të jashtëm

Kjo është e njëjta pikë fundore ekzistuese për krijimin e projekteve, me shtimin e parametrit external_key_id në kërkesë dhe në përgjigje.

Shembull kërkese

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"
}'

Shembull përgjigjeje

{
"object": "organization.project",
"id": "proj_xxxxx",
"name": "Some Project",
"external_key_id": "extkey_xxxx",
"created_at": 1740012721,
"archived_at": null,
"status": "active"
}

[Qasje e kufizuar] Përditësoni një projekt ekzistues me ID-në e një çelësi të jashtëm

Kjo është e njëjta pikë fundore ekzistuese për përditësimin e projekteve, me shtimin e parametrit external_key_id në kërkesë dhe në përgjigje.

Rekomandojmë të krijoni projekte të reja të API-së për ngarkesat tuaja të punës me EKM. Nëse dëshironi EKM në të gjitha projektet tuaja ekzistuese të API-së, kërkojani drejtuesit të llogarisë suaj dhe do t'jua mundësojmë përmes cilësimit të aktivizimit të funksionit. Mbani parasysh praktikat e mëposhtme të rekomanduara përpara se të aktivizoni EKM në projektet tuaja ekzistuese në mjedisin e prodhimit.

  • Fillimisht, testoni në projektin tuaj testues të API-së me EKM të gjitha veçoritë e API-së që përdorni në mjedisin e prodhimit.

  • Aktivizojeni EKM gradualisht, në vend që ta aktivizoni njëherësh në të gjitha projektet e API-së në mjedisin e prodhimit.

Shembull kërkese

curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects/proj_xxx" \
-d '{
"external_key_id": "extkey_xxxx"
}'

Listoni të gjitha projektet në organizatën tuaj

Kjo është e njëjta pikë fundore si ajo ekzistuese, por me shtimin e external_key_id në përgjigjen e API-së.

Shembull kërkese

curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects"

Shembull përgjigjeje

{
"object": "list",
"data": [
{
"object": "organization.project",
"id": "proj_xxxx",
"name": "Project Name",
"external_key_id": "extkey_xxxx",
"created_at": 1717798982,
"archived_at": null,
"status": "active"
}
],
"first_id": "proj_xxxx",
"last_id": "proj_xxxx",
"has_more": true
}

A ishte i dobishëm ky artikull?