Cuando uses claves de API en tus aplicaciones, asegúrate de que se mantengan seguras durante el almacenamiento y la transmisión. Si expones tus claves de API de forma pública, puedes generar cargos inesperados en tu cuenta o acceso no autorizado a tus datos. Para ayudarte a mantener tus claves de API seguras, implementa las siguientes prácticas recomendadas.
Agrega restricciones de clave de API a tu clave
Si agregas restricciones, puedes limitar las formas en que se puede usar una clave de API, lo que reduce el impacto de una clave de API vulnerada.
Para obtener más información, consulta Aplica restricciones de clave de API.
Evita usar parámetros de consulta para proporcionar tu clave de API a las APIs de Google
Si proporcionas tu clave de API a las APIs como un parámetro de consulta, esta se incluye en la URL, lo que la expone al robo a través de análisis de URL. En su lugar, usa el encabezado HTTP x-goog-api-key
o una biblioteca cliente.
Borra las claves de API innecesarias para minimizar la exposición a los ataques
Reten solo las claves de API que usas de forma activa para mantener la superficie de ataque lo más pequeña posible.
No incluyas claves de API en el código del cliente ni las confirmes en repositorios de código
Las claves de API codificadas en el código fuente o almacenadas en un repositorio están expuestas a la interceptación o el robo por parte de personas malintencionadas. El cliente debe pasar solicitudes al servidor, que puede agregar la credencial y emitir la solicitud.
No uses claves de API vinculadas a cuentas de servicio en producción
Las claves de API vinculadas a las cuentas de servicio están diseñadas para acelerar la experiencia inicial de los desarrolladores que exploran las APIs de Google Cloud . No los uses en entornos de producción. En su lugar, planifica migrar a alternativas más seguras, como las políticas de administración de identidades y accesos (IAM) y las credenciales de cuenta de servicio de corta duración, siguiendo las prácticas de seguridad de privilegios mínimos.
A continuación, se explica por qué debes migrar del uso de una clave de API vinculada a una cuenta de servicio a prácticas más seguras lo antes posible:
Las claves de API se envían junto con las solicitudes. Esto aumenta la probabilidad de que la clave pueda exponerse o registrarse.
Las claves de API son credenciales de portador. Esto significa que, si alguien roba una clave de API que está vinculada a una cuenta de servicio, puede usarla para autenticarse como esa cuenta de servicio y acceder a los mismos recursos que ella.
Las claves de API vinculadas a cuentas de servicio ocultan la identidad del usuario final en los registros de auditoría. Para hacer un seguimiento de las acciones de usuarios individuales, asegúrate de que cada uno tenga su propio conjunto de credenciales.
Implementa una supervisión y un registro sólidos
Supervisar el uso de la API puede ayudarte a alertarte sobre el uso no autorizado. Para obtener más información, consulta la descripción general de Cloud Monitoring y la descripción general de Cloud Logging.
Cómo aislar claves de API
Proporciona a cada miembro del equipo su propia clave de API para cada aplicación. Esto puede ayudar a controlar el acceso, proporcionar un registro de auditoría y reducir el impacto de una clave de API vulnerada.
Rota tus claves de API de forma periódica
Crea claves de API nuevas de forma periódica, actualiza tus aplicaciones para que usen las claves de API nuevas y borra las claves antiguas.
Para obtener más información, consulta Rota una clave de API.
Considera un método más seguro para autorizar el acceso
Si necesitas ayuda para elegir un método de autenticación, consulta Métodos de autenticación.