Esta página se aplica a Apigee y Apigee híbrido .
Ver la documentación de Apigee Edge .
Las siguientes secciones le presentan los productos API y conceptos relacionados, como cuotas y claves API.
¿Qué es un producto API?
Como proveedor de API, creas productos API para agrupar tus API y ponerlas a disposición de los desarrolladores de aplicaciones. Puedes considerar los productos API como tu línea de productos.
En concreto, un producto API agrupa una o más operaciones. Cada operación especifica un proxy API y las rutas de recursos accesibles desde dicho proxy. También puede limitar el acceso mediante métodos HTTP y cuotas.
Los productos API son el mecanismo central para el control de acceso a sus API. Al definir uno o más productos API en una aplicación para desarrolladores, puede restringir el acceso a los servidores proxy con una clave API. En Apigee, las claves API se aprovisionan no para las API en sí, sino para los productos API. En otras palabras, las claves API se aprovisionan para conjuntos de operaciones que definen una línea de productos o un plan de servicio específico.
Casos de uso comunes
Puede crear varios productos API que contengan operaciones para abordar casos de uso específicos. Por ejemplo, puede crear un producto API que agrupe varias operaciones que contengan recursos de mapeo para que los desarrolladores puedan integrar fácilmente mapas en sus aplicaciones.
Además, puede utilizar productos API para definir niveles de precios según criterios como:
El número de solicitudes:
- Premium: Solicitudes ilimitadas por día
- Básico: Hasta 1000 solicitudes por día
- Gratis: hasta 100 solicitudes por día
O nivel de acceso:
- Premium: Leer, escribir, actualizar y eliminar
- Básico: Leer y actualizar
- Gratis: Sólo lectura
O cualquier combinación de las anteriores:
- Extra Premium: Lee y escribe ilimitadas veces al día
- Premium: Lee y escribe hasta 1000 solicitudes por día
- Básico: acceso de lectura y escritura hasta 100 veces al día
- Gratis: Lee hasta 1000 veces al día
- Gratuito: acceso de solo lectura limitado a 100 solicitudes por día
Requisitos
Los productos API que forman parte del sistema de pago por uso deben incluir:
- Proxies extensibles creados con ganchos de flujo o
- Políticas extensibles como la política VerifyAPIKey o la política OAuthv2
Operaciones
Una operación es un grupo de atributos que restringen el acceso a uno o más servidores proxy de API según criterios como la ruta del recurso, el método HTTP y la cuota. Una operación incluye los siguientes atributos:
Atributo | ¿Requerido? | Descripción |
---|---|---|
Proxy API | Requerido | Cada grupo de operaciones debe especificar un proxy de API. Solo se permite un proxy por grupo de operaciones. |
Servicio remoto | Depende | Solo es necesario si instala y planea utilizar Apigee Adapter para Envoy. |
Ruta de recursos | Requerido | Cada grupo de operaciones debe especificar una o más rutas de recursos. Las rutas de recursos en una operación restringen el acceso a recursos específicos en un proxy de API. (Una ruta de recursos es la parte de la URL de solicitud del proxy de API que viene después de la ruta base del proxy). |
Método HTTP | Opcional | También puede restringir el acceso a un proxy mediante un método HTTP. Por ejemplo, si especifica los métodos GET y POST para un grupo de operaciones, solo las solicitudes HTTP GET y POST podrán acceder al proxy para la ruta de recursos especificada. Si no se especifica ningún método, se permiten todos. |
Cuota | Opcional | Puede especificar una cuota para el grupo de operaciones. La cuota especificada en un grupo de operaciones prevalece sobre una cuota a nivel de producto de API, si se especifica. |
Atributos personalizados | Opcional | Los atributos personalizados son útiles para métricas, monitorización o casos en los que se desea almacenar información adicional con un producto API a la que se pueda acceder o recuperar posteriormente. Los atributos personalizados asociados a una operación existen además de cualquier atributo personalizado a nivel de producto API y se puede acceder a ellos en tiempo de ejecución como variables de flujo con el prefijo apiproduct.operation.attributes . |
Claves API
Al registrar la aplicación de un desarrollador en su organización, esta debe estar asociada con al menos un producto API. Al vincular una aplicación con uno o más productos API, Apigee le asigna una clave de consumidor única. Consulte también "Controlar el acceso a sus API mediante el registro de aplicaciones" .
La clave de consumidor o token de acceso actúa como credenciales de solicitud. El desarrollador de la aplicación integra la clave de consumidor en la aplicación, de modo que, cuando esta realiza una solicitud a una API alojada por Apigee, la pasa en la solicitud de una de las siguientes maneras:
- Cuando la API utiliza la verificación de clave API, la aplicación debe pasar la clave del consumidor directamente.
- Cuando la API utiliza la verificación de token OAuth, la aplicación debe pasar un token derivado de la clave del consumidor.
La aplicación de la clave API no es automática. Ya sea que se use la clave de consumidor o tokens OAuth como credenciales de solicitud, el proxy de API valida las credenciales de solicitud en sus proxies de API mediante la inclusión de una política VerifyAPIKey o una configuración de política VerifyAccessToken
(consulte la política OAuthv2 ) en el flujo correspondiente. Si no incluye una política de aplicación de credenciales en su proxy de API, cualquier usuario podrá invocar sus API.
Para verificar las credenciales pasadas en la solicitud, Apigee realiza los siguientes pasos:
- Obtenga las credenciales que se pasan con la solicitud. En el caso de la verificación de tokens OAuth, Apigee verifica que el token no haya caducado y busca la clave de consumidor utilizada para generarlo.
- Recupere la lista de productos API a los que se ha asociado la clave de consumidor.
- Confirme que el Proxy de API actual esté incluido en el Producto de API, si la ruta de recurso actual (ruta URL) está habilitada en el Producto de API y, si está incluida en el producto, que la solicitud utiliza un verbo HTTP especificado.
- Verificar que la cuota, si está especificada, no haya sido excedida.
- Verifique que la clave del consumidor no esté vencida o revocada, verifique que la aplicación no esté revocada y verifique que el desarrollador de la aplicación esté activo.
Si se superan todas las comprobaciones anteriores, la verificación de credenciales será exitosa.
En resumen, Apigee genera automáticamente claves de consumidor, pero los editores de API tienen que aplicar la verificación de claves en los servidores proxy de API mediante políticas adecuadas.
Aprobación de claves
De forma predeterminada, todas las solicitudes para obtener una clave de acceso a un producto API desde una aplicación se aprueban automáticamente. Como alternativa, puede configurar el producto API para que deba aprobar las claves manualmente. La configuración se describe en Administrar productos API . En este caso, deberá aprobar las solicitudes de clave de cualquier aplicación que agregue el producto API. Para obtener más información, consulte Controlar el acceso a sus API mediante el registro de aplicaciones .
Cuotas
Las cuotas pueden proteger sus servidores backend de las altas variaciones de tráfico y diferenciar su línea de productos. Por ejemplo, puede agrupar recursos con una cuota alta como producto premium y usar el mismo paquete con una cuota más baja como producto básico. Las cuotas pueden ayudar a proteger sus servidores de la saturación si un producto es popular y recibe una gran cantidad de solicitudes en poco tiempo.
Puede especificar una cuota que se aplique a todos los servidores proxy de API incluidos en el producto de API o cuotas a nivel de operación. Una cuota especificada en una operación prevalece sobre una cuota establecida a nivel de producto de API.
Establecer límites de cuota en un producto API no implica la aplicación automática de la cuota. Se trata simplemente de un límite predeterminado al que se puede hacer referencia en las políticas de cuota. Estas son algunas ventajas de establecer una cuota en el producto para que las políticas de cuota la utilicen como referencia:
- Utilice una política de cuotas para aplicar una configuración uniforme en todos los servidores proxy de API de un producto API.
- Si cambia la configuración de cuota del producto API en tiempo de ejecución, las políticas de cuota hacen referencia automáticamente a la configuración de cuota actualizada.
Para obtener más información, consulte lo siguiente:
- Política de cuotas
- ¿Cómo interactúan las configuraciones de cuota en un producto API con las políticas de cuota en un proxy API?
Ámbitos de OAuth
Puede definir los ámbitos de OAuth como una lista separada por comas que debe estar presente en los tokens de acceso asociados al producto. Para obtener más información sobre el uso de ámbitos con las políticas de OAuth de Apigee, consulte Trabajar con ámbitos de OAuth2 .
Niveles de acceso
Al definir un producto API, puede establecer los siguientes niveles de acceso:
Nivel de acceso | Descripción |
---|---|
Public | Productos API disponibles para todos los desarrolladores. Puedes añadirlos a portales para desarrolladores integrados o basados en Drupal. |
Solo Private o Internal only | Productos API que están diseñados para uso privado o interno. Para el portal integrado, puede agregar productos API Para los portales para desarrolladores basados en Drupal, puede administrar el acceso a productos API
|