¿Qué es una clave de API?
Una clave de API es una cadena alfanumérica que los desarrolladores de API utilizan para controlar el acceso a sus API. Una API es un mecanismo de comunicación que permite el intercambio de datos entre dos módulos de software. Una vez que haya creado una API para su módulo, otros desarrolladores de aplicaciones pueden llamar a su API para integrar su funcionalidad en el código. Por ejemplo, podría desarrollar un módulo que tome una lista de artículos como entrada y devuelva una lista de tiendas donde puede comprar esos artículos al precio más bajo. A continuación, una aplicación de comercio electrónico podría usar su API para generar una lista de ofertas diarias de comestibles para sus clientes. Como creador de la API, utiliza las claves de la API para restringir y supervisar el acceso a la API. La clave de API identifica el uso autorizado de la API para que pueda mantener, administrar y monetizar las API de forma más eficiente.
¿Cuáles son los casos de uso de las claves de API?
Los desarrolladores de software utilizan las claves de API para administrar cómo se accede a las API que crean. Las claves de API contribuyen al desarrollo de aplicaciones en la nube modernas de varias maneras.
Supervisión del uso de la API
Los proveedores de API utilizan las claves de API para realizar un seguimiento del uso y administrar el consumo de las API, especialmente en el caso de las aplicaciones comerciales. Se cobra a los usuarios por los recursos informáticos que consume la API.
Como proveedor de API, puede limitar el acceso a los servicios de la API con claves de API únicas. Debido a que solo se permite el paso del tráfico legítimo, puede optimizar la utilización de los recursos y la capacidad de ancho de banda de su API. También puede analizar las estadísticas de uso de cada clave para ajustar las cuotas de los diferentes planes.
Solución de problemas de integraciones de API
Las aplicaciones en la nube pueden experimentar problemas técnicos debido a las API que utilizan. Los desarrolladores de software utilizan las claves de API para detectar patrones de datos anormales y hacer coincidir el tráfico de la API con sus respectivos proveedores. De esta forma, pueden identificar y aislar la API específica que impide que una aplicación se comporte correctamente.
Identificación de proyectos
Las aplicaciones de software intercambian datos confidenciales con servicios externos a través de una API. Las claves de API sirven como mecanismo de autorización de proyectos para regular el uso por parte de los proyectos permitidos. Para usar una API, el proyecto debe presentar las credenciales de API correctas para acceder a las funciones de software abstraídas. Es importante tener en cuenta que las claves de API no autentican a usuarios específicos. En su lugar, identifican ampliamente la organización asociada a una clave específica.
¿Cómo funciona una clave de API?
La clave de API consta de caracteres alfabéticos y numéricos generados de manera aleatoria. Se asocia una clave de API específica a un cliente de API específico. Dado que el uso de la API consiste básicamente en un módulo de software que se comunica con otro, las claves se asocian con diferentes módulos de software o aplicaciones que desean comunicarse con la API.
Cuando una aplicación envía solicitudes de la API, el proceso funciona de la siguiente manera:
- El servidor de la API valida la autenticidad del solicitante con la clave de API única.
- Si la clave de API no coincide con ninguna de las permitidas, el servidor rechaza la llamada a la API y envía un mensaje de rechazo.
- Si la clave de API coincide, el servidor responde a la solicitud y devuelve la respuesta esperada.
De esta forma, las claves de API permiten al servidor de API identificar el origen de cada llamada a la API. Luego, el servidor puede realizar validaciones posteriores para autorizar el acceso a los datos y a los servicios de la API.
Limitación de las llamadas a la API
Los proveedores de API pueden utilizar la clave de API para regular los distintos grados de acceso a los servicios de API. Cuando se valida una solicitud, el servidor de API puede verificar algunos parámetros antes de permitir el acceso a sus servicios.
Alcance del servicio
El servidor determina el alcance de los servicios que se concederá a la aplicación solicitante. Por ejemplo, algunas claves de API permiten al solicitante agregar, eliminar y leer información del almacenamiento de datos de la API. Otros pueden limitar las llamadas a la API a la lectura de información solamente.
Selección de funciones
El servidor determina e impone el alcance de la llamada a la API para personalizar sus servicios de API. Por ejemplo, puede utilizar las claves de API para limitar una aplicación de comercio electrónico para que busque datos de productos en países específicos. Además, puede asociar claves de API específicas a determinados filtros paramétricos de la base de datos, como libros e indumentaria.
Cantidad de llamadas
Los proveedores de API también utilizan las claves de API para regular de manera estricta el acceso a las API. Algunos proveedores aplican límites de tiempo o solicitudes a sus API. En esos casos, la aplicación cliente solo puede utilizar la API durante el tiempo estipulado o por una cantidad máxima de días. Una vez que se superan los límites, el servidor rechaza cualquier solicitud de las claves de API asociadas.
¿Cuál es la diferencia entre una clave de API y un token de API?
Una clave de API es una cadena de identificadores únicos destinada principalmente a identificar el tráfico de las aplicaciones de los clientes de la API. Las claves de API suelen estar asociadas a servidores específicos en los que se implementa la aplicación que hace la llamada. Cuando la aplicación realiza una solicitud a la API, el servidor identifica la aplicación que hace la llamada mediante la clave de API.
Por el contrario, un token de API es una cadena de códigos que contiene datos generales que identifican a un usuario específico. Los token de API también incluyen el alcance del acceso otorgado a un usuario específico. Esto permite que el servidor autentifique las solicitudes del usuario que llama y valide el alcance del uso de la API. Por ejemplo, un usuario puede usar un token de inicio de sesión único para acceder a un grupo de API.
Generar una clave de API es más sencillo debido a su función limitada para la autorización de los usuarios. Por el contrario, existen más restricciones y procedimientos cuando se otorgan tokens de API porque contienen datos de identificación y autenticación.
En Amazon Web Services (AWS), los tokens de API también se denominan tokens de autenticación o tokens de seguridad. Los desarrolladores utilizan permisos de IAM, un autorizador de Lambda o un grupo de usuarios de Amazon Cognito para crear tokens de API y administrar el acceso a sus API.
¿Cuáles son las prácticas recomendadas para las claves de API?
Hay algunas prácticas recomendadas que debe tener en cuenta cuando usa las claves de API.
Evite el uso de claves de API para la autenticación de usuarios. Las claves de API no están destinadas a regular el acceso de los usuarios. Del mismo modo, no incluya información confidencial en las claves de API, ya que podría estar visible durante la transmisión.
No inserte claves de API directamente en el código fuente o repositorio. Si olvida eliminarlos, es posible que estén expuestos al público cuando publique la solicitud.
Elimine las claves de API cuando ya no estén en uso. Considere agregar una fecha de vencimiento para las claves y así lograr una seguridad de API más sólida.
¿Cómo puede ayudarle AWS con la administración de sus claves de API?
Amazon Web Services (AWS) ofrece Amazon API Gateway para sus necesidades de administración de claves de API.
Puede utilizar API Gateway para crear, publicar, mantener, supervisar y proteger las API de WebSocket, REST y HTTP a cualquier escala. Los desarrolladores de API pueden crear API que accedan a AWS u otros servicios web, así como a los datos almacenados en la nube de AWS.
Después de crear, probar e implementar las API, puede usar los planes de uso de API Gateway para que estén disponibles como ofertas de productos para sus clientes. Puede configurar planes de uso y claves de API para permitir a sus clientes acceder a las API seleccionadas. Y puede empezar a limitar las solicitudes a esas API en función de límites y cuotas definidos.
Cree una cuenta hoy mismo, para comenzar a administrar claves de API en AWS
Siguientes pasos en AWS
Obtenga acceso instantáneo al nivel Gratuito de AWS.
Comience a crear en la consola de administración de AWS.