Esta página se aplica a Apigee y Apigee híbrido .
Ver la documentación de Apigee Edge .
Una clave API (conocida en Apigee como clave de consumidor ) es un valor de cadena que una aplicación cliente pasa a sus servidores proxy de API. Esta clave identifica de forma única a la aplicación cliente.
La validación de claves API es la forma más sencilla de seguridad basada en aplicaciones que se puede configurar para una API. Una aplicación cliente simplemente presenta una clave API con su solicitud y Apigee comprueba que esté aprobada para el recurso solicitado. Internamente, los proxies utilizan políticas para verificar la autenticidad de la clave API.
Para que esta simplicidad sea posible, necesitarás realizar una pequeña configuración. Para usar claves API, necesitarás:
- Cree un producto API de Apigee que agrupe los servidores proxy API que desea proteger mediante la clave API.
- Cree una aplicación de desarrollador de Apigee que represente al desarrollador de la aplicación cliente cuya aplicación autenticará.
Al crear la aplicación para desarrolladores, se especifican los productos API a los que la aplicación del desarrollador tendrá acceso y para los cuales deberá proporcionar una clave API.
- A sus servidores proxy (los que incluyó en su producto API), agregue políticas para verificar que una clave API entrante sea válida.
El tutorial Cómo proteger una API solicitando claves API es una forma rápida de aprender a controlar el acceso a un proxy API con una clave API.
Cómo funcionan las claves API
En Apigee, una clave API se denomina clave de consumidor. Al registrar aplicaciones de desarrollador, Apigee genera una clave de consumidor y un secreto. Apigee almacena la clave de consumidor para su posterior validación. Cada clave de consumidor es única en la organización. El desarrollador de la aplicación integra la clave de consumidor en la aplicación cliente. Esta debe presentar la clave de consumidor en cada solicitud. Los Servicios API verifican la clave de consumidor antes de permitir la solicitud de la aplicación.
Pasos de alto nivel
Los siguientes pasos describen cómo Apigee utiliza las claves API. Estos pasos también incluyen la posible presencia de seguridad OAuth, ya que suele usarse junto con las claves API.
- Cree un producto API que incluya servidores proxy API que deben protegerse con la clave API.
- Registras una aplicación para desarrolladores en tu organización. Al hacerlo, Apigee genera una clave y un secreto de consumidor.
- Asocie la aplicación para desarrolladores con al menos un producto API . Este producto asocia las rutas de recursos y los proxies API con la aprobación de claves.
- En tiempo de ejecución, cuando la aplicación cliente realiza una solicitud a la API, envía la clave del consumidor al realizar la solicitud . En la práctica, la clave del consumidor puede transmitirse explícitamente o puede hacerse referencia a ella implícitamente mediante un token OAuth:
- Cuando la API utiliza la verificación de clave API (por ejemplo, mediante la implementación de una política VerifyAPIKey), la aplicación cliente debe pasar la clave del consumidor explícitamente.
- Cuando la API utiliza la verificación de token OAuth (por ejemplo, al implementar una política OAuthV2), la aplicación cliente debe pasar un token derivado de la clave del consumidor.
- El proxy de API valida las credenciales de la solicitud mediante una política VerifyAPIKey o una política OAuthV2 con una operación VerifyAccessToken. Si no incluye una política de cumplimiento de credenciales en su proxy de API, cualquier usuario podrá invocar sus API correctamente. Para más información, consulte la política Verificar clave de API .
Verificación de credenciales de solicitud
Esta es una descripción general. Consulte "Configuración de la validación de la clave API" para obtener más información y ejemplos de código.
- Si está utilizando la verificación de token OAuth (ha implementado una política OAuth para verificar y la aplicación cliente ha pasado un token OAuth):
- Apigee verifica que el token no haya expirado y luego busca la clave del consumidor que se utilizó para generar el token.
- Si está usando una clave API, ha implementado una política VerifyAPIKey y la aplicación cliente ha pasado su clave de consumidor:
- Apigee verifica la lista de productos API con los que se ha asociado la clave del consumidor.
- Apigee verifica cada producto API para ver si el proxy API actual está incluido en el producto API y si la ruta de recurso actual (ruta URL) está habilitada en el producto API.
- Apigee también verifica que la clave del consumidor no esté vencida o revocada, verifica que la aplicación no esté revocada y verifica que el desarrollador no esté inactivo.
- Si todas esas cosas son verdaderas (el token no ha vencido (si corresponde), la clave del consumidor es válida y está aprobada, la aplicación está aprobada, el desarrollador está activo, el proxy está disponible en el producto y el recurso está disponible en el producto), la verificación de credenciales se realiza correctamente.