Visión general
Introducción
Todos los usuarios asociados con una única organización de Casdoor comparten acceso a las aplicaciones de la organización. Sin embargo, puede haber casos en los que quieras restringir el acceso de los usuarios a ciertas aplicaciones o recursos específicos dentro de una aplicación. En tales casos, puedes utilizar la característica Permission
proporcionada por Casbin.
Antes de profundizar en el tema, es importante tener un entendimiento básico de cómo funciona Casbin y sus conceptos relacionados, como Modelos, Políticas y Adaptadores. En resumen, un Modelo define la estructura de tus políticas de permisos y los criterios para hacer coincidir las solicitudes con estas políticas y sus resultados. Una Política, por otro lado, describe las reglas de permisos específicas. Una vez que Casbin tiene la información necesaria del Modelo y la Política, puede hacer cumplir el control de permisos en las solicitudes entrantes. Actuando como una capa de abstracción, un Adaptador protege al ejecutor de Casbin de la fuente de la Política, permitiendo el almacenamiento de Políticas en varios lugares como archivos o bases de datos.
Volviendo al tema de la configuración de permisos en Casdoor, puedes agregar un Modelo para tu organización en el elemento de configuración Model
dentro de la interfaz de usuario web de Casdoor, y una Política para tu organización en el elemento de configuración Permission
. El Editor en Línea de Casbin puede proporcionarte archivos de Modelo y Política adaptados a tus escenarios de uso específicos. Puedes importar sin esfuerzo el archivo de Modelo en Casdoor a través de su interfaz de usuario web para su uso por el Casbin integrado. Sin embargo, para la Política (es decir, el elemento de configuración Permission
en la interfaz de usuario web de Casdoor), se necesitan instrucciones adicionales, que se discutirán más adelante.
Así como tu aplicación necesita hacer cumplir el control de permisos a través del Casbin integrado en Casdoor, Casdoor mismo utiliza su propio Modelo y Política para regular los permisos de acceso para las interfaces de la API a través de Casbin. Aunque Casdoor puede llamar a Casbin desde el código interno, las aplicaciones externas no pueden. Como solución, Casdoor expone una API para que las aplicaciones externas llamen al Casbin integrado. Proporcionaremos definiciones de estas interfaces de API e instrucciones sobre cómo usarlas en breve.
Hacia el final de este capítulo, mostraremos un ejemplo práctico para demostrar cómo Casdoor trabaja en colaboración con aplicaciones externas para el control de permisos.
¡Empecemos!