Autorización
Autorización (Authorization) define qué acciones puede realizar un usuario o a qué recursos puede acceder después de ser autenticado, determinando qué puede hacer en tu aplicación.
El servicio de autorización de Logto utiliza un mecanismo basado en tokens. Mientras Logto proporciona token de acceso
, tu servidor de recursos es responsable de validarlos y aplicarlos como parte del control de acceso.
Hay dos tipos de tokens de acceso:
- Tokens de acceso: Usados para acceder a recursos de API de usuario / sistema.
- Tokens de organización: Tokens de acceso especiales para recursos de organización, utilizados en una arquitectura multi-tenant cuando la función de organización está habilitada.
Logto ofrece servicios de autorización para varios escenarios. Aquí hay varios casos de uso típicos y puedes elegir el adecuado y hacer coincidir tus requisitos con las características y servicios de Logto.
Escenario | Cómo | Flujo de autorización |
---|---|---|
Protege simplemente tus recursos de API, sin RBAC. | Registra tu API en Logto Console, y Logto simplemente otorgará tokens de acceso | Logto otorga token de acceso (sin permisos), y necesitas validar estos tokens para proteger tus recursos de API. |
Protege tus recursos de API con RBAC | Registra tu API y aplica RBAC para un control de acceso flexible y granular. | Logto otorga token de acceso con permiso incluido para proteger tus recursos de API. |
Protege tus recursos de organización usando RBAC a nivel de organización (plantilla de organización). | Trata cada organización como un recurso, usando RBAC a nivel de organización (plantilla de organización) para el control de acceso en una arquitectura multi-tenant. | Logto otorga token de organización con permiso de organización para proteger recursos a nivel de organización. |
También puedes usar herramientas como reclamos de token personalizados para incluir reclamos adicionales en los tokens de acceso para cumplir con tus requisitos técnicos personalizados. También un caso de uso más avanzado: Protege tus recursos de API usando RBAC a nivel de organización (plantilla de organización)
Familiarízate con el control de acceso basado en roles
El control de acceso basado en roles se utiliza en toda la infraestructura de Logto, tanto a nivel del sistema (control de acceso basado en roles) como a nivel de organización (RBAC de organización):
- Sujetos (Subjects): Estos pueden ser usuarios reales (o miembros en el contexto de la organización) o entidades no humanas, como aplicaciones máquina a máquina.
- Recursos de API (API resources): Los recursos dentro de tu sistema que necesitan protección.
- Roles: Representan funciones laborales o responsabilidades.
- Permisos (Permissions): Definen qué acciones están autorizadas en recursos específicos.
Gestionar estas entidades y sus relaciones te permite satisfacer de manera flexible tus necesidades de control de acceso. En Logto, puedes usar RBAC en dos niveles, nivel de usuario / sistemas (sin capa intermedia de organización involucrada), y organizaciones. En el contexto de la organización, tiene un diseño de RBAC independiente que llamamos "Plantilla de organización".
Características para la autorización
Registra simplemente recursos de API en Logto Console y protege tus recursos de API.
Usa el control de acceso basado en roles (RBAC) para gestionar permisos a nivel de usuario / sistema para una gestión más fácil y flexibilidad.
Usa la plantilla de organización (RBAC de organización) para proteger tus recursos. Ideal para productos multi-tenant, con roles definidos a nivel de organización.
Usa reclamos de token personalizados para agregar reclamos personalizados e implementar control de acceso basado en atributos.