Sistema de autorización de Logto y su uso en escenarios de gestión de identidad
Explora el versátil sistema de autorización de Logto.
Logto sirve no solo como proveedor de autenticación sino también como proveedor de autorización. En este artículo, proporcionaré una visión general de los métodos de autorización de Logto y explicaré cómo estas capas flexibles pueden aplicarse a varios escenarios.
Usa control de acceso basado en roles para proteger tu recurso API
Registrar recursos API en Logto
Para establecer un sistema de autorización donde diferentes usuarios tengan diferentes accesos a recursos y permisos de acción, puedes comenzar registrando el recurso API en Logto y luego agregando permisos. Utiliza roles para agregar estos permisos, ya sea para un solo API o a través de múltiples.
Una gran característica de Logto es su capacidad para crear varios tipos de roles que pueden aplicarse a diferentes entidades, incluidas tanto las aplicaciones de usuario como las de máquina a máquina. Los usuarios pueden heredar roles específicos de usuario, mientras que las aplicaciones de máquina a máquina pueden heredar roles diseñados para ellas.
Entidad objetivo: Usuario
Si tu aplicación es una aplicación general donde diferentes usuarios necesitan realizar diferentes acciones, utilizar roles de usuario es una forma flexible de establecer un sistema de control de acceso efectivo.
Entidad objetivo: Aplicación de máquina a máquina
La comunicación de máquina a máquina (M2M) es una práctica común para autenticarse si tienes una aplicación que necesita hablar directamente con los recursos. Por ejemplo, un servicio API que actualiza datos personalizados de usuarios en Logto, un servicio estadístico que extrae órdenes diarias, etc.
Las aplicaciones de máquina a máquina pueden ser utilizadas en dos casos de uso clave en Logto:
- Protege tu aplicación API sin interfaz configurando un sistema de autorización.
- Usa la API de gestión de Logto para desarrollar tus servicios, como habilitar perfiles de usuario que permitan a los usuarios finales actualizar su información relacionada con la identidad.
La distinción con los roles de usuario en este contexto es que el rol se define específicamente como un rol de máquina a máquina, no un rol de usuario, y solo se puede asignar a aplicaciones de máquina a máquina.
En este contexto RBAC de API, los recursos de API, roles y permisos están "democratizados" y vistos a nivel del sistema dentro de un sistema de identidad unificado. Este enfoque es bastante común en productos B2C sencillos, donde hay menos necesidad de una gestión jerárquica compleja.
Usa una plantilla de organización (RBAC) para proteger tu recurso a nivel organizacional
En escenarios B2B, los roles de usuario pueden variar en diferentes organizaciones. Por ejemplo, John podría tener un rol de administrador en la Organización A pero solo tener un rol de miembro en la Organización B.
Esto se puede lograr configurando plantillas de organización en Logto, que ayudan a tu aplicación multi-tenant a construir un sistema de control de acceso.
En lugar de crear numerosos roles para cada organización, Logto te permite crear una plantilla de organización. Este enfoque mantiene la consistencia en todas las organizaciones mientras permite a los usuarios la flexibilidad de tener diferentes roles en diferentes organizaciones.
Los permisos de organización no requieren que se registre un recurso API. Logto emite tokens de organización que incluyen roles y otras declaraciones, que pueden usarse para una verificación adicional del token de organización en tu API.
Usa una plantilla de organización (RBAC) para proteger tanto los recursos a nivel de sistema como de organización
Si tienes recursos API registrados en Logto y buscas extender su uso al nivel organizacional, es completamente posible.
Esta necesidad puede surgir si estás usando el mismo endpoint para funciones a nivel de sistema y operaciones específicas de la organización. Tener un único endpoint está bien, y utilizar el contexto de organización también puede asegurar efectivamente el aislamiento de inquilinos.
En Logto, puedes asignar permisos de API directamente a un rol de organización, adaptándolo a tus requisitos específicos.
Aquí tienes una mirada rápida a cómo integrar permisos de API con el rol de tu organización.
Esta función está en desarrollo y se espera que esté disponible en la primera mitad de 2024.
¿Emocionado por los sistemas de autorización de Logto y nuestras próximas funciones de autorización? Regístrate hoy y obtén las últimas actualizaciones del producto de inmediato.