Samantekt
Aðgangur
EKM endpoints eru aðgengileg í Management API með Admin API-lykli. https://platform.openai.com/settings/organization/admin-keys (ekki nota venjulegan API-lykil). Admin API-lyklar eru í boði fyrir eigendur fyrirtækis.
Notaðu
api.external_keys.writetil að búa til eða eyða ytri lyklum ogapi.external_keys.readtil að lista eða staðfesta ytri lykla. Einn lykill þarf aðeins bæði umfangin ef hann þarf að framkvæma bæði lestrar- og skrifaðgerðir.Sem stendur þurfum við að virkja eiginleikafána fyrir fyrirtækið þitt til að veita aðgang að þessum endpoints. Þú veist að eiginleikafáninn er virkur ef þú sérð external_key_id skilað úr núverandi List Projects endpoint: https://api.openai.com/v1/organization/projects
Notkun
EKM-stillingin þín er skráð á fyrirtækisstigi með nýju endpoint https://api.openai.com/v1/organization/external_keys
Þegar EKM-stillingin er skráð er external_key_id skilað á sniðinu extkey_xxxx
EKM-stillingar eru virkjaðar á verkefnisstigi með því að senda external_key_id í meginmáli núverandi Create Project https://api.openai.com/v1/organization/projects endpoint
Takmarkanir
Þú verður fyrst að prófa EKM í nýju verkefni með Management API.
Við mælum með að stofna ný verkefni fyrir EKM-vinnuálag. Ef þú vilt hins vegar nota EKM í núverandi verkefni getum við bætt þér við eiginleikafánann. Athugaðu eftirfarandi bestu starfsvenjur áður en þú innleiðir EKM í núverandi framleiðsluverkefnum.
Prófaðu fyrst alla API-eiginleika sem þú notar í framleiðslu í EKM-prófunarverkefninu þínu
Innleiddu smám saman í stað þess að bæta EKM við öll API-framleiðsluverkefni í einu
endpoints á fyrirtækisstigi
Skrá ytri lykil hjá fyrirtækinu þínu
AWS
Dæmisbeiðni
type: string - alltaf „aws“
name: string - Læsilegt heiti fyrir stillingarnar þínar
role_arn: string - Role ARN sem OpenAI mun taka sér í skýinu þínu
kms_arn: string - Key Management System ARN fyrir aðallykilinn sem þú stjórnar
external_id: string - Auðkenni fyrirtækisins þíns eða API-verkefnis
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>
}'Dæmisvar
{
"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
Dæmisbeiðni
type: string - alltaf "gcp",
name: string - Læsilegt heiti fyrir stillingarnar þínar
workload_identity_project_number: string - 12 stafa GCP-verkefnisnúmerið þar sem þú skráðir vinnuálagsauðkenni OpenAI
workload_identity_pool_id: string - Hópurinn sem inniheldur Workload Identity-veituna sem þú skráðir fyrir OpenAI
workload_identity_provider_id: string - Workload Identity-veitan sem þú skráðir fyrir OpenAI
audience: string - Markhópurinn sem OpenAI á að senda í tókanum þegar við tökum okkur hlutverk í gegnum GCP STS hjá þér
kms_project_id: string - Heiti GCP-verkefnisins þar sem KMS-kerfið þitt er
kms_key_ring_name: string - Key Management System lyklahringurinn sem inniheldur aðallykilinn sem þú stjórnar
kms_key_name: string - Heiti Key Management System aðallykilsins
kms_key_location: string - Svæðið þar sem Key Management System aðallykillinn er staðsettur
Ef KMS-kerfið þitt er í öðru GCP-verkefni en því þar sem þú skráðir Workload Identity fyrir OpenAI skaltu ganga úr skugga um að verkefnið sem inniheldur Workload Identity fyrir OpenAI hafi að minnsta kosti KMS virkt með því að fara á 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"
}'Dæmisvar
{
"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
Dæmisbeiðni
type: string - alltaf "azure",
name: string - Læsilegt heiti fyrir stillingarnar þínar
tenant_id: string - UUID Azure-leigjandans þíns
vault_uri: string - URI Azure-hvelfingarinnar sem inniheldur aðallykilinn sem þú stjórnar
key_name: string - Heiti Azure Key Vault aðallykilsins sem þú stjórnar.
Hann verður að vera á sniðinu <org-xxx>--<any_name>
þar sem org-xxx er auðkenni OpenAI-fyrirtækisins þíns, sem þú finnur á https://platform.openai.com/settings/organization/general
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"
}'Dæmisvar
{
"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"
}Eyða ytri lykli sem er skráður hjá fyrirtækinu þínu
Athugið: Þú getur aðeins eytt ytri lykli ef hann er ekki tengdur neinum virkum API-verkefnum eða vinnusvæði. Ef hann er tengdur virku API-verkefni skaltu setja það verkefni í safn fyrst. Ef hann er tengdur vinnusvæði er ekki hægt að eyða lyklinum.
Dæmisbeiðni
curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys/extkey_xxxx"Dæmisvar
{
"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>"
}Sækja ytri lykla sem eru skráðir hjá fyrirtækinu þínu
Dæmisbeiðni
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys"Dæmisvar
{
"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"
}Staðfesta ytri lykil
Þú getur notað þetta endpoint til að athuga nokkur atriði
Ytri skýjastillingin þín er áfram gild hjá OpenAI eftir að þú hefur gert breytingar (þú sérð svar um að aðgerðin hafi tekist)
Afturköllun lykilsins er rétt framkvæmd, OpenAI er að vinna úr henni og hún tekur gildi þegar 1 klukkustundar skyndiminnis-TTL er útrunnið (þú sérð villusvar)
Dæmisbeiðni
curl -X POST -H "Authorization: Bearer $TOKEN"
"https://api.openai.com/v1/organization/external_keys/extkey_xxx/validate"Dæmisvar
{
"status": "success"
}Eða villa sem kemur frá skýjaþjónustuveitunni.
endpoints á verkefnisstigi
Búa til nýtt verkefni með auðkenni ytri lykils
Þetta er það sama og núverandi Create Project endpoint, en með external_key_id færibreytunni bætt við í beiðni og svari.
Dæmisbeiðni
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"
}'Dæmisvar
{
"object": "project",
"id": "proj_xxxxx",
"title": "Some Project",
"external_key_id": "extkey_xxxxx",
"created": 1740012721,
"organization_id": "org-xxxxx",
"is_initial": false,
"geography": null,
"scale_tier_enabled": false,
"disable_user_api_keys": false,
"zdr_type": null,
}[Takmarkað] Uppfæra núverandi verkefni með auðkenni ytri lykils
Þetta er það sama og núverandi Update Project endpoint, en með external_key_id færibreytunni bætt við í beiðni og svari.
Við mælum með að stofna ný API-verkefni fyrir EKM-vinnuálag. Ef þú vilt nota EKM í öllum núverandi API-verkefnum skaltu hafa samband við viðskiptastjórann þinn og við bætum þér við eiginleikafánann. Athugaðu eftirfarandi bestu starfsvenjur áður en þú innleiðir EKM í núverandi framleiðsluverkefnum.
Prófaðu fyrst alla API-eiginleika sem þú notar í framleiðslu í EKM-prófunarverkefninu þínu
Innleiddu smám saman í stað þess að bæta EKM við öll API-framleiðsluverkefni í einu
Dæmisbeiðni
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"
}'Lista öll verkefni fyrirtækisins
Þetta er það sama og núverandi endpoint, en með external_key_id bætt við í API-svarinu
Dæmisbeiðni
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/projects"Dæmisvar
{
"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
}