¿Qué es API Management?What is API Management?

API Management ayuda a las organizaciones a publicar API para desarrolladores externos, asociados e internos a fin de desbloquear el potencial de sus datos y servicios.API Management (APIM) helps organizations publish APIs to external, partner, and internal developers to unlock the potential of their data and services. Todas y cada una de las empresas pretenden extender sus operaciones como una plataforma digital creando nuevos canales, buscando nuevos clientes y estrechando la relación con los existentes.Businesses everywhere are looking to extend their operations as a digital platform, creating new channels, finding new customers and driving deeper engagement with existing ones. API Management proporciona las competencias esenciales para garantizar un programa de API de éxito mediante compromisos con desarrolladores, información detallada empresarial, análisis, seguridad y protección.API Management provides the core competencies to ensure a successful API program through developer engagement, business insights, analytics, security, and protection. Puede usar Azure API Management para tomar cualquier back-end e iniciar un programa de API completo basado en él.You can use Azure API Management to take any backend and launch a full-fledged API program based on it.

Este artículo proporciona información general de escenarios comunes que implican a APIM.This article provides an overview of common scenarios that involve APIM. También ofrece una breve descripción de los componentes principales del sistema de APIM.It also gives a brief overview of the APIM system's main components. El artículo, a continuación, proporciona una descripción más detallada de cada uno.The article, then, gives a more detailed overview of each component.

Información generalOverview

Para usar API Management, los administradores crean API.To use API Management, administrators create APIs. Cada API consta de una o varias operaciones y se puede agregar a uno o varios productos.Each API consists of one or more operations, and each API can be added to one or more products. Para usar una API, los desarrolladores se suscriben a un producto que contiene esa API y después pueden llamar a la operación de la API cumpliendo cualquier directiva de uso que pueda estar en vigor.To use an API, developers subscribe to a product that contains that API, and then they can call the API's operation, subject to any usage policies that may be in effect. Entre los escenarios habituales se incluyen los siguientes:Common scenarios include:

  • Protección de la infraestructura móvil mediante el control de acceso con claves de API, la prevención de ataques de denegación de servicio mediante la limitación o el uso de directivas de seguridad avanzadas como la validación de tokens JWT.Securing mobile infrastructure by gating access with API keys, preventing DOS attacks by using throttling, or using advanced security policies like JWT token validation.
  • Habilitación de los ecosistemas de asociados de fabricantes de software independiente mediante la oferta de una incorporación rápida de asociados a través del portal para desarrolladores y la creación de una fachada de API para desacoplar desde implementaciones internas que no son adecuada para el consumo de los asociados.Enabling ISV partner ecosystems by offering fast partner onboarding through the developer portal and building an API facade to decouple from internal implementations that are not ripe for partner consumption.
  • Ejecución de un programa de API interno mediante la oferta de una ubicación centralizada para la organización a fin de comunicar acerca de la disponibilidad y los últimos cambios en las API y el control de acceso en función de cuentas de organizaciones, todo ello basado en un canal seguro entre la puerta de enlace de la API y el back-end.Running an internal API program by offering a centralized location for the organization to communicate about the availability and latest changes to APIs, gating access based on organizational accounts, all based on a secured channel between the API gateway and the backend.

El sistema consta de los siguientes componentes:The system is made up of the following components:

  • La puerta de enlace de la API es el extremo que:The API gateway is the endpoint that:

    • Acepta llamadas de API y las enruta a los back-end.Accepts API calls and routes them to your backends.
    • Comprueba las claves de API, los tokens JWT, los certificados y otras credenciales.Verifies API keys, JWT tokens, certificates, and other credentials.
    • Aplica cuotas de uso y límites de frecuencia.Enforces usage quotas and rate limits.
    • Transforma la API sobre la marcha sin modificaciones de código.Transforms your API on the fly without code modifications.
    • Almacena en caché las respuestas de back-end donde se instalaron.Caches backend responses where set up.
    • Registra los metadatos de llamada para fines de análisis.Logs call metadata for analytics purposes.
  • Azure Portal es la interfaz administrativa donde se configura el programa de API.The Azure portal is the administrative interface where you set up your API program. Utilícelo para:Use it to:

    • definir o importar el esquema de APIDefine or import API schema.
    • empaquetar las API en productosPackage APIs into products.
    • establecer directivas, como cuotas o transformaciones, en las APISet up policies like quotas or transformations on the APIs.
    • obtener información del análisisGet insights from analytics.
    • administrar usuariosManage users.
  • El portal para desarrolladores actúa como la presencia web principal para desarrolladores, donde estos pueden:The Developer portal serves as the main web presence for developers, where they can:

    • leer documentación de la APIRead API documentation.
    • probar una API a través de la consola interactivaTry out an API via the interactive console.
    • crear una cuenta y suscribirse para obtener claves de APICreate an account and subscribe to get API keys.
    • obtener acceso a análisis sobre su propio usoAccess analytics on their own usage.

Para más información, consulte las notas del producto en PDF API Management basada en la nube: aprovechamiento de la capacidad de las API.For more information, see the Cloud-based API Management: Harnessing the Power of APIs PDF whitepaper. Estas notas del producto introductorias sobre la administración de API por CITO Research cubren:This introductory whitepaper on API Management by CITO Research covers:

  • Desafíos y requisitos comunes de APICommon API requirements and challenges
  • Desacoplamiento de API y presentación de fachadasDecoupling APIs and presenting facades
  • Puesta en marcha de los desarrolladores rápidamenteGetting developers up and running quickly
  • Protección de accesoSecuring access
  • Análisis y métricasAnalytics and metrics
  • Obtención de control e información con una plataforma de API ManagementGaining control and insight with an API Management platform
  • Uso de soluciones de nube frente a localesUsing cloud vs on-premises solutions
  • Azure API ManagementAzure API Management

API y operaciones APIs and operations

Las API son el fundamento de una instancia del servicio Administración de API.APIs are the foundation of an API Management service instance. Cada API representa un conjunto de operaciones disponibles para los desarrolladores.Each API represents a set of operations available to developers. Cada API contiene una referencia a un servicio back-end que implementa la API y sus operaciones se asignan a las operaciones implementadas por dicho servicio.Each API contains a reference to the back-end service that implements the API, and its operations map to the operations implemented by the back-end service. Las operaciones de API Management son altamente configurables, con control sobre asignación de direcciones URL, parámetros de consulta y ruta de acceso, contenidos de solicitudes y respuestas y almacenamiento en caché de respuestas de operaciones.Operations in API Management are highly configurable, with control over URL mapping, query and path parameters, request and response content, and operation response caching. En la API o en el ámbito de operación individual, también se pueden implementar directivas de límite de tasa, cuotas y restricción de direcciones IP.Rate limit, quotas, and IP restriction policies can also be implemented at the API or individual operation level.

Para más información, consulte Creación de API e Incorporación de operaciones a una API.For more information, see How to create APIs and How to add operations to an API.

Productos Products

Los productos son la forma de presentar las API a los desarrolladores.Products are how APIs are surfaced to developers. Los productos en Administración de API tienen una o varias API y se configuran con un título, una descripción y términos de uso.Products in API Management have one or more APIs, and are configured with a title, description, and terms of use. Los productos pueden ser de tipo Abierto o Protegido.Products can be Open or Protected. Para poder usar los productos protegidos es necesario suscribirse antes a ellos, mientras que los productos abiertos pueden usarse sin suscripción.Protected products must be subscribed to before they can be used, while open products can be used without a subscription. Cuando un producto está preparado para que lo usen los desarrolladores, se puede publicar.When a product is ready for use by developers, it can be published. Una vez publicado, los desarrolladores pueden verlo (y, en el caso de los productos protegidos, suscribirse a él).Once it is published, it can be viewed (and in the case of protected products subscribed to) by developers. La aprobación de la suscripción se configura en el ámbito de producto y puede requerir la aprobación del administrador o aprobarse automáticamente.Subscription approval is configured at the product level and can either require administrator approval, or be auto-approved.

Los grupos se usan para administrar la visibilidad de productos a los desarrolladores.Groups are used to manage the visibility of products to developers. Los productos conceden visibilidad a los grupos y los desarrolladores pueden ver los productos visibles a los grupos a los que pertenecen y suscribirse a ellos.Products grant visibility to groups, and developers can view and subscribe to the products that are visible to the groups in which they belong.

Grupos Groups

Los grupos se usan para administrar la visibilidad de productos a los desarrolladores.Groups are used to manage the visibility of products to developers. API Management tiene los siguientes grupos invariables del sistema:API Management has the following immutable system groups:

  • Administradores : los administradores de la suscripción de Azure son miembros de este grupo.Administrators - Azure subscription administrators are members of this group. Los administradores controlan las instancias del servicio Administración de API y crean las API, las operaciones y los productos que usan los desarrolladores.Administrators manage API Management service instances, creating the APIs, operations, and products that are used by developers.
  • Desarrolladores : los usuarios del portal para desarrolladores autenticados se incluyen en este grupo.Developers - Authenticated developer portal users fall into this group. Los desarrolladores son los clientes que compilan aplicaciones con sus API.Developers are the customers that build applications using your APIs. Los desarrolladores, después de que se les concede acceso al portal para desarrolladores, crean aplicaciones que llaman a las operaciones de una API.Developers are granted access to the developer portal and build applications that call the operations of an API.
  • Invitados : a este grupo pertenecen los usuarios del portal para desarrolladores no autenticados como, por ejemplo, clientes potenciales que visitan el portal para desarrolladores de una instancia de API Management.Guests - Unauthenticated developer portal users, such as prospective customers visiting the developer portal of an API Management instance fall into this group. Se les concede determinado acceso de solo lectura, como por ejemplo la posibilidad de ver API pero no llamarlas.They can be granted certain read-only access, such as the ability to view APIs but not call them.

Además de estos grupos del sistema, los administradores pueden crear grupos personalizados o aprovechar los grupos externos en inquilinos de Azure Active Directory asociados.In addition to these system groups, administrators can create custom groups or leverage external groups in associated Azure Active Directory tenants. Los grupos personalizados y externos pueden usarse junto con grupos del sistema en la concesión a los desarrolladores de visibilidad y acceso a productos de la API.Custom and external groups can be used alongside system groups in giving developers visibility and access to API products. Por ejemplo, podría crear un grupo personalizado para los desarrolladores afiliados a una organización asociada específica y permitirles el acceso a las API a partir de un producto que contenga solo las API relevantes.For example, you could create one custom group for developers affiliated with a specific partner organization and allow them access to the APIs from a product containing relevant APIs only. Un usuario puede ser miembro de más de un grupo.A user can be a member of more than one group.

Para más información, consulte Creación y uso de grupos.For more information, see How to create and use groups.

Desarrolladores Developers

Los desarrolladores representan las cuentas de usuario de una instancia del servicio API Management.Developers represent the user accounts in an API Management service instance. Los desarrolladores pueden ser creados por administradores o invitados por estos y también pueden suscribirse desde el Portal para desarrolladores.Developers can be created or invited to join by administrators, or they can sign up from the Developer portal. Cada desarrollador es miembro de uno o varios grupos y se puede suscribir a los productos que conceden visibilidad a esos grupos.Each developer is a member of one or more groups, and can subscribe to the products that grant visibility to those groups.

Cuando los desarrolladores se suscriben a un producto, se les concede la clave principal y secundaria para dicho producto.When developers subscribe to a product, they are granted the primary and secondary key for the product. Esta clave se usa cuando se realizan llamadas en las API del producto.This key is used when making calls into the product's APIs.

Para más información, consulte Creación o invitación de desarrolladores y Asociación de grupos a desarrolladores.For more information, see How to create or invite developers and How to associate groups with developers.

Directivas Policies

Las directivas son una eficaz funcionalidad de API Management que permite a Azure Portal cambiar el comportamiento de la API a través de la configuración.Policies are a powerful capability of API Management that allow the Azure portal to change the behavior of the API through configuration. Las directivas son una colección de declaraciones que se ejecutan secuencialmente en la solicitud o respuesta de una API.Policies are a collection of statements that are executed sequentially on the request or response of an API. Entre las declaraciones más usadas se encuentran la conversión de formato de XML a JSON y la limitación de tasa de llamadas para restringir el número de llamadas entrantes de un desarrollador, pero también hay muchas otras directivas disponibles.Popular statements include format conversion from XML to JSON and call rate limiting to restrict the number of incoming calls from a developer, and many other policies are available.

Las expresiones de directiva pueden utilizarse como valores de atributos o valores de texto en cualquiera de las directivas de API Management, a menos que la directiva especifique lo contrario.Policy expressions can be used as attribute values or text values in any of the API Management policies, unless the policy specifies otherwise. Algunas directivas como Flujo de control y Establecer variable se basan en expresiones de directiva.Some policies such as the Control flow and Set variable policies are based on policy expressions. Para más información, consulte Directivas avanzadas y Expresiones de directiva.For more information, see Advanced policies and Policy expressions.

Para obtener una lista completa de las directivas de API Management, consulte Referencia de la directiva.For a complete list of API Management policies, see Policy reference. Para más información acerca del uso y la configuración de directivas, consulte Directivas de API Management.For more information on using and configuring policies, see API Management policies. Para ver un tutorial sobre la creación de un producto con directivas de cuota y límite de tasas, consulte Creación y definición de configuraciones de productos avanzadas.For a tutorial on creating a product with rate limit and quota policies, see How create and configure advanced product settings.

Portal para desarrolladores Developer portal

El portal para desarrolladores es el lugar en el que los desarrolladores pueden aprender acerca de sus API, ver operaciones y llamarlas y suscribirse a productos.The developer portal is where developers can learn about your APIs, view and call operations, and subscribe to products. Los clientes potenciales pueden visitar el portal para desarrolladores, ver API y operaciones y suscribirse.Prospective customers can visit the developer portal, view APIs and operations, and sign up. La dirección URL del portal para desarrolladores se encuentra en Azure Portal para la instancia del servicio API Management.The URL for your developer portal is located on the dashboard in the Azure portal for your API Management service instance.

Puede personalizar el aspecto y apariencia del portal para desarrolladores agregando contenido personalizado, personalizando estilos e incorporando su toque diferenciador.You can customize the look and feel of your developer portal by adding custom content, customizing styles, and adding your branding.

API Management y la economía de la APIAPI Management and the API economy

Para más información acerca de API Management, vea la siguiente presentación de la conferencia Microsoft Ignite 2017.To learn more about API Management, watch the following presentation from the Microsoft Ignite 2017 conference.

Pasos siguientesNext steps

Complete la guía de inicio rápido siguiente y empiece a usar Azure API Management:Complete the following quickstart and start using Azure API Management: