OpenAI

Mejores prácticas para la seguridad de la clave de API

Última actualización: 2 days ago

1. Siempre utiliza una clave de API única para cada miembro de tu equipo en tu cuenta.

Una clave de API es un código único que identifica tus solicitudes a la API. Tu clave de API está destinada a que la uses tú. Compartir las claves de API está en contra de los Términos de uso.

A medida que comienzas a experimentar, podrías querer ampliar el acceso a la API para tu equipo. OpenAI no permite compartir claves de API. Invita a nuevos miembros a tu cuenta desde la página Miembros y recibirán rápidamente su propia clave única al iniciar sesión. También puedes asignar permisos a claves de API individuales.

2. Nunca despliegues tu clave en entornos del lado del cliente, como navegadores o aplicaciones móviles.

Exponer tu clave de API de OpenAI en entornos del lado del cliente, como navegadores o aplicaciones móviles, permite a usuarios malintencionados tomar esa clave y hacer solicitudes en tu nombre, lo que puede resultar en cargos inesperados o comprometer ciertos datos de la cuenta. Las solicitudes deben siempre ser dirigidas a través de tu propio servidor backend donde puedes mantener segura tu clave de API.

3. Nunca subas tu clave a tu repositorio

Incluir una clave de API en el código fuente es una práctica común que puede comprometer las credenciales. Para quienes tienen repositorios públicos, esta es una manera común de compartir sin querer tu clave en internet. Los repositorios privados son más seguros, pero una violación de datos también puede provocar que se filtren tus claves. Por estas razones, recomendamos encarecidamente el uso de las variables de entorno como una medida clave de seguridad proactiva.

4. Usa variables de entorno en lugar de tu clave de API.

Una variable de entorno es una variable que se configura en tu sistema operativo, en vez de dentro de tu aplicación. Consiste en un nombre y un valor. Recomendamos que establezcas el nombre de la variable como OPENAI_API_KEY. Al mantener este nombre de variable consistente en todo tu equipo, puedes hacer commit y compartir tu código sin el riesgo de exponer tu clave de API.

Configuración de Windows

Opción 1: Configura tu variable de entorno ‘OPENAI_API_KEY’ a través del símbolo del sistema

Ejecuta lo siguiente en el símbolo del sistema, reemplazando <yourkey> con tu clave de API:

setx OPENAI_API_KEY "<yourkey>"

Esto se aplicará a futuras ventanas del mensaje, por lo que necesitarás abrir una nueva para usar esa variable con curl. Puedes verificar que esta variable está configurada abriendo una nueva ventana de mensaje y escribiendo

echo %OPENAI_API_KEY%

Opción 2: Configura tu variable de entorno "OPENAI_API_KEY" a través del Panel de Control

1. Abre las propiedades del sistema y selecciona Configuración avanzada del sistema

Windows 10 System settings with Advanced system settings highlighted in Control Panel

2. Selecciona Variables de entorno...

Windows System Properties Advanced tab with Environment Variables button highlighted

3. Selecciona Nuevo… en la sección de variables de usuario (parte superior). Agrega tu par nombre/valor de clave, reemplazando <yourkey> con tu clave de API.

Nombre de la variable: OPENAI_API_KEY
Valor de la variable: <yourkey>

Configuración de Linux / macOS

Opción 1: Establece tu variable de entorno ‘OPENAI_API_KEY’ usando zsh

1. Ejecuta el siguiente comando en tu terminal, reemplazando yourkey con tu clave de API.

echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc

2. Actualiza el shell con la nueva variable:

source ~/.zshrc

3. Confirma que has establecido tu variable de entorno utilizando el siguiente comando.

echo $OPENAI_API_KEY

El valor de tu clave de API será el resultado.

Opción 2: Configura tu variable de entorno "OPENAI_API_KEY" usando bash

Sigue las instrucciones de la Opción 1, reemplazando .zshrc. con .bash_profile.

¡Ya estás listo! Ahora puedes referenciar la clave en curl o cargarla en Python:

import os
import openai

openai.api_key = os.environ["OPENAI_API_KEY"]

5. Usa un servicio de gestión de claves

Hay una variedad de productos disponibles para gestionar de manera segura las claves de API. Estas herramientas te permiten controlar el acceso a tus claves y mejorar la seguridad general de tus datos. En el evento de una violación de datos en tu aplicación, tus claves no se verían comprometidas, ya que estarían cifradas y gestionadas en una ubicación completamente separada.

Para los equipos que implementan sus aplicaciones en producción, te recomendamos considerar uno de estos servicios.

6. Monitorea el uso de tu cuenta y cambia tus claves cuando sea necesario.

Una clave de API comprometida permite a una persona acceder a la cuota de tu cuenta sin tu consentimiento. Esto puede resultar en pérdida de datos, cargos inesperados, agotamiento de tu cuota mensual e interrupción en tu acceso a la API.

Puedes hacer un seguimiento del uso de tus equipos a través de la página Uso. Si alguna vez tienes inquietudes sobre el mal uso, hay algunas acciones que puedes tomar para proteger tu cuenta:

  • Revisa tu uso para ver si está alineado con el trabajo de tu equipo. Para usuarios que pertenecen a múltiples organizaciones (p. ej. (corporativo y personal), asegúrate de que el usuario haya habilitado el seguimiento y haya configurado su organización predeterminada para el uso y seguimiento.

  • Si crees que tu clave fue filtrada, cambia tu clave inmediatamente desde la página de claves de API. Para los clientes con aplicaciones en producción, necesitarás actualizar los valores clave en consecuencia.

  • Contáctanos a través de help.openai.com para obtener más información.

7. Restringir el acceso a la API mediante listas de IP permitidas

La lista de IP permitidas permite restringir qué direcciones IP pueden acceder a la API de OpenAI. Cuando se activa, solo se aceptan solicitudes desde las direcciones IP o rangos configurados, y todas las demás se rechazan, incluso si incluyen una clave API válida.

Esto agrega una capa adicional de protección al garantizar que solo se pueda acceder a tu API desde infraestructura de confianza, como tus servidores de backend o tu entorno en la nube.

Para obtener más información, consulta el artículo sobre la lista de IP permitidas para la API de OpenAI.

¿Este artículo te fue útil?