En este tema, se muestra a los desarrolladores de aplicaciones cómo usar las claves de API con las API de Google Cloud. Una clave de API es una string encriptada simple que identifica una aplicación sin ninguna principal. Son útiles para acceder a datos públicos de forma anónima y se usan a fin de asociar las solicitudes a la API con tu proyecto para la cuota y la facturación.
Para obtener más información sobre la autenticación en las API de Google Cloud y sobre cómo determinar la mejor estrategia de autenticación en situaciones comunes, consulta Descripción general de la autenticación. Si deseas obtener más información sobre el uso de claves de API para las API y los SDK de Google Maps Platform, consulta la documentación de Google Maps Platform.
Pruébalo tú mismo
Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar e implementar cargas de trabajo.
Comenzar gratisAdministra claves de API
Te recomendamos usar Cloud Console para administrar las claves de API. Navega a la página API y servicios → Credenciales en Cloud Console. Las claves de API se muestran en la sección Claves de API. En esta página, puedes crear claves de API, definir restricciones para estas claves, rotar strings de claves de API y realizar otras acciones.
Crea una clave de API
Para crear una clave de API en un proyecto, el usuario debe tener la función básica de editor (roles/editor
) en el proyecto. Consulta las funciones básicas para obtener más información.
Para crear una clave de API, sigue estos pasos:
En Cloud Console, navega al panel API y servicios→Credenciales.
Selecciona Crear credenciales y, luego, Clave de API en el menú desplegable.
Se mostrará la clave nueva en el cuadro de diálogo Se creó la clave de API.
Recomendamos que copies la clave y la mantengas segura. A menos que uses una clave de prueba que pretendas borrar más adelante, agrega restricciones de aplicación y de clave de API.
Usa una clave de API
Pasa la clave de API a una llamada a la API de REST como un parámetro de búsqueda con el siguiente formato. Reemplaza API_KEY
por la clave de API.
key=API_KEY
Por ejemplo, si deseas pasar una clave de API para solicitar documents.analyzeEntities
a la API de Cloud Natural Language, usa lo siguiente:
POST https://language.googleapis.com/v1/documents:analyzeEntities?key=API_KEY
Protege una clave de API
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 credenciales de forma pública, puedes poner en riesgo tu cuenta y generar cargos inesperados en ella. Para ayudarte a mantener tus claves de API seguras, sigue estas prácticas recomendadas:
No incorpores claves de API directamente en el código. Las claves de API incorporadas en el código pueden exponerse de forma accidental al público. Por ejemplo, podrías olvidarte de quitar las claves cuando compartes el código. En lugar de incorporar tus claves de API en tus aplicaciones, almacénalas en variables de entorno o en archivos fuera del árbol de origen de tu aplicación.
No almacenes claves de API en archivos dentro del árbol de origen de tu aplicación. Si almacenas claves de API en archivos, mantenlos fuera del árbol de origen de tu aplicación para asegurarte de que tus claves no terminen en tu sistema de control de código fuente. Esto es muy importante si usas un sistema de administración de código fuente público como GitHub.
Configura restricciones de aplicación y de clave de API. Si agregas restricciones, puedes reducir el impacto de una clave de API vulnerada.
Borra las claves de API innecesarias para minimizar la exposición a los ataques.
Regenera tus claves de API de forma periódica. Para regenerar las claves de API desde la página de credenciales, haz clic en Regenerar clave para cada una. Luego, actualiza tus aplicaciones para que usen las claves recién generadas. Tus claves anteriores continuarán funcionando durante 24 horas después de que generes las claves de reemplazo.
Revisa tu código antes de lanzarlo de forma pública. Asegúrate de que el código no contenga claves de API o cualquier otra información privada antes de hacer que esté disponible de forma pública.
Aplica restricciones de claves de API
Las claves de API no están restringidas de forma predeterminada. Las claves no restringidas son inseguras porque cualquier persona puede usarlas desde cualquier lugar. Para las aplicaciones de producción, debes establecer restricciones de aplicaciones y restricciones de API.
Para agregar restricciones de clave de API, sigue estos pasos:
En Cloud Console, navega al panel API y servicios→Credenciales.
Selecciona el nombre de una clave de API existente.
Agrega restricciones de aplicaciones
Las restricciones de aplicaciones especifican qué sitios web, direcciones IP o apps pueden usar una clave de API. Agrega restricciones de aplicación según tu tipo de aplicación. Solo puedes configurar un tipo de restricción por clave de API.
Elige el tipo de restricción según las necesidades de la app.
Usa Ninguna solo con fines de prueba.
Usa URL de referencia HTTP para los clientes de API que se ejecuten en un navegador web, de modo que solo las páginas especificadas puedan llamar a la API. Estos tipos de aplicaciones exponen sus claves de API de forma pública, por lo que recomendamos que, en su lugar, uses una cuenta de servicio. Consulta la sección Agrega restricciones HTTP que se muestra a continuación para ver ejemplos.
Usa Direcciones IP para limitar el acceso a las claves de API desde ciertas direcciones IP.
Usa Apps de Android para aplicaciones de Android. Esta opción requiere agregar el nombre de tu paquete y la huella digital del certificado de firma SHA-1.
Usa apps de iOS para aplicaciones de iOS. Esta opción requiere que agregues al menos un identificador de paquete de iOS para restringir las llamadas a la API a paquetes de iOS específicos.
Agrega restricciones HTTP
Las claves de API que usan las aplicaciones web deben tener restricciones HTTP. Para agregar restricciones HTTP, sigue estos pasos:
Selecciona URL de referencia HTTP (sitios web) en la sección Restricciones de aplicaciones.
Ingresa al menos una restricción en la sección Restricciones de sitios web.
Si el dominio admite HTTP y HTTPS, se deben agregar ambas restricciones por separado.
De forma opcional, puedes usar caracteres comodín (
*
) para el subdominio o la ruta de acceso.
En la siguiente tabla, se muestran situaciones y restricciones de ejemplo, desde la más restrictiva a la menos restrictiva. Recomendamos usar el ejemplo más restrictivo que se ajuste a tu caso práctico.
Situación | Restricciones |
---|---|
Permitir una URL específica. |
Agrega una sola restricción con una ruta de acceso exacta. Por ejemplo:
|
Permitir cualquier URL en un solo subdominio o dominio simple. |
Debes establecer al menos dos restricciones para permitir un dominio completo.
|
Permitir cualquier URL de subdominio en un solo dominio. |
Debes establecer al menos dos restricciones.
|
Agrega restricciones de API
Las restricciones de API especifican a qué API se puede llamar mediante la clave de API. Todas las claves de API que usan las aplicaciones de producción deben tener restricciones de API.
Para establecer restricciones de API, sigue estos pasos:
Selecciona Restringir clave en la sección Restricciones de API.
En el menú desplegable, selecciona todos los nombres de las API a las que debe llamar la clave.
Selecciona el botón Guardar.
Próximos pasos
- Obtén información sobre cómo autenticar en una API de Google Cloud.
- Obtén información sobre la autenticación como usuario final.
- Obtén información sobre la autenticación como cuenta de servicio.