Información general
Enterprise Key Management (EKM) permite a OpenAI cifrar datos usando una clave maestra que tú controlas. Para que OpenAI pueda llamar a operaciones de cifrado/descifrado en tu Key Vault, necesitaremos que se nos conceda acceso. Este documento muestra cómo configurar tu cuenta de Azure para que OpenAI pueda asumir un rol con permisos de Key Vault.

Pasos
1. Crea una entidad de servicio para OpenAI en tu cuenta
Obtener un token de acceso
az account get-access-token --resource https://graph.microsoft.com
--tenant YOUR_TENANT_IDCrea la entidad de servicio: el appId de la solicitud siguiente es el id. de cliente de la aplicación de OpenAI. Esto creará una entidad con el nombre para mostrar «EKM - OpenAI Azure»: recuérdalo para los pasos posteriores.
Instrucciones de integración de OpenAI / Azure EKM: crear una entidad de servicio
curl -X POST https://graph.microsoft.com/v1.0/servicePrincipals \
-H "Authorization: Bearer $TOKEN_FROM_ABOVE" \
-H "Content-Type: application/json" \
–d '{"appId": "20a14814-5ab7-4612-a671-1382b412bf93"}'2. Crea un rol personalizado para acceso limitado a KMS
Ve a Suscripciones -> Control de acceso (IAM)
En el desplegable + Agregar, selecciona Agregar rol personalizado
Ve a la pestaña JSON, haz clic en Editar y añade lo siguiente:
Cualquier nombre de rol: recuerda el nombre que has seleccionado
Los siguientes permisos en dataActions:
Microsoft.KeyVault/vaults/keys/encrypt/actionMicrosoft.KeyVault/vaults/keys/decrypt/actionMicrosoft.KeyVault/vaults/keys/read

3. Crea un Key Vault + clave
Si aún no tienes uno, crea un Key Vault nuevo en la misma suscripción donde acabas de crear tu rol personalizado.
En ese Key Vault, crea una clave nueva:
Ve a Key Vault -> Objetos -> Claves y, a continuación, haz clic en Generar/Importar
En Opciones, selecciona Generar

Selecciona RSA como algoritmo de cifrado.
Puedes seleccionar cualquier tamaño de clave RSA
Proporciona un nombre de clave con el siguiente formato:
<org-xxx>--<any_name>, dondeorg-xxxes el ID de tu organización de OpenAI, que puedes encontrar en https://platform.openai.com/settings/organization/general

Si no puedes ver ni crear una clave, asegúrate de tener el rol Administrador de Key Vault. Esto es necesario incluso si tienes el rol de propietario. Para que se te asigne el rol:
Ve a Key Vault -> Control de acceso (IAM)
Haz clic en Agregar -> Agregar asignación de rol

4. Crea una asignación de rol para la entidad de servicio de OpenAI + KMS personalizado nuevo + clave nueva
Ve a Key Vault -> Objetos -> Claves y haz clic en la fila de la clave que has creado
Ve a Control de acceso (IAM) de la clave en la que acabas de hacer clic (no a tu almacén de claves).
En el desplegable + Agregar, selecciona Agregar asignación de rol

En la pestaña Rol, selecciona el nombre del rol personalizado que acabas de crear.

En la pestaña Miembros:
Haz clic en «+ Seleccionar miembros»
Escribe «ekm -» en la barra de búsqueda; entonces debería cargarse la entidad de servicio de OpenAI que creaste en el paso 1

5. Aplica cualquier restricción adicional de acuerdo con tus propias prácticas de seguridad
Lo anterior es la información mínima que OpenAI necesita para configurar EKM. Puedes aplicar políticas de claves o restricciones adicionales de acuerdo con tus propias prácticas de seguridad internas, siempre que OpenAI pueda llamar a operaciones de cifrado y descifrado en tu KMS. Cuando llames al punto de acceso de registro de claves con OpenAI que se describe a continuación, validaremos tu configuración.
Después de completar los pasos anteriores
ChatGPT Enterprise
Ponte en contacto con tu contacto de OpenAI y comparte lo siguiente:
"tenant_id": "<YOUR_AZURE_TENANT_UUID>"
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/"
"key_name": "<YOUR_KEY_NAME>"
El nombre de la clave maestra de Azure Key Vault que gestionas
El nombre de la clave debe tener el formato <org-xxx>--<any_name>, donde org-xxx es el ID de tu organización de OpenAI, que puedes encontrar en https://platform.openai.com/settings/organization/general
Habilitaremos EKM para tu organización/área de trabajo de ChatGPT.
API
Registrar tu clave externa con OpenAI
Sigue las instrucciones de esta referencia de la API: Claves externas en la API de gestión
Primero, registra tu clave externa en el nivel de organización de OpenAI, lo que generará un id. de clave externa con el formato extkey_xxx
En este paso, validaremos que tu entrada sea válida y que podamos autenticarnos en tu KMS.
Esto aún no añadirá EKM a tu proyecto de OpenAI.
# This generates an external key ID of the form extkey_xxx
curl -X POST \
-H "Content-type: application/json" \
-H "Authorization: Bearer $TOKEN" \
"https://api.openai.com/v1/organization/external_keys" \
-d '{
"type": "azure",
"name": "<ANY_FRIENDLY_NAME>",
"tenant_id": "<YOUR_AZURE_TENANT_UUID>",
"vault_uri": "https://<YOUR_KEYVAULT_NAME>.vault.azure.net/",
"key_name": "<YOUR_KEY_NAME>"
}'A continuación, crea un proyecto de OpenAI asociado con la clave externa. Después de esto, EKM estará activado en tu proyecto.
El cuerpo de la respuesta de esta llamada a la API te proporcionará el ID del proyecto (proj_xxx)
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"
}'