Aptli

Autorización

La autorización define qué puede o no hacer un usuario después de obtener acceso a tu aplicación. (./authentication)

El modelo de autorización de Aptli combina elementos permisivos y restrictivos para una flexibilidad tremenda:

  1. Derechos de Administrador visibles a través de la configuración del usuario Verificando Derechos de Administrador y
  2. Un modelo restrictivo de Roles logrado a través de membresía Restricciones de Rol

Derechos de Administrador

Los derechos de administrador son permisivos. Esto significa que el permiso debe concederse a los usuarios pero solo para modificar información o alterar estado. Por ejemplo, tener usersUpdate permite a un usuario alterar algunos detalles de perfil de otro usuario. Esto incluiría Nombre, Título, División, etc., mientras excluye cambios a correo electrónico, contraseñas, SSO y fechas de validación. Sin esto, los usuarios solo pueden editar su propio perfil.

usersLogout es requerido para bloquear duramente o cerrar sesión a un usuario y usersDelete es requerido para eliminar la cuenta de un usuario. usersCreate puede restaurar una cuenta o crear una nueva única con las restricciones de campo arriba.

Casi todos los modelos de datos se comportan de esta manera y solo 3 Derechos de Administrador los superan todos:

  • appSettingSchemasModify que permite modificación a configuraciones a nivel de aplicación como dominios permitidos, tiempos de espera e información del servidor
  • adminRightsModify que permite a los usuarios compartir y extender derechos de administrador a otros usuarios.
  • viewDeleted que permite a los usuarios ver registros eliminados. Esto es casi universal, aunque puede ser parcialmente anulado por Restricciones de Rol.

Restricciones de Rol

Los roles son restrictivos. Esto significa que la asignación a un rol previene ver y alterar registros con ciertas características. Los roles son una colección de Restricciones de Rol y consisten en Miembros. Solo el Propietario de un rol puede cambiar los miembros o cualquiera con derechos de administrador RoleUpdate.

Las Restricciones de Rol vienen con una configuración básica de modelo, campo, comparación, valor de filtro y los permisos de leer/editar/crear/eliminar. Por ejemplo, digamos que había activos que no deberían ser visibles por contratistas competidores A y B. Para prevenir acceso a la información de B haga lo siguiente:

  • crear un rol llamado contratista A y agregar una Restricción de Rol con los siguientes detalles:
  • establecer el modelo como Punto para representar las Características de Punto
  • establecer un campo con la información como propietario
  • establecer una comparación como =
  • establecer Valor de Filtro a Contratista B
  • establecer leer, editar, crear, eliminar a verdadero, significando que no pueden verlo o cambiarlo.

Una vez completo, agregue sus miembros de contratista A al rol, y los miembros de Contratista A no podrán ver nada donde el propietario sea Contratista B.

Usando Derechos de Administrador junto con Restricciones de Rol

Por defecto, todos los usuarios además del administrador pueden ver todo pero no alterar todo. Permitir acceso de escritura ampliamente puede ser restringido por registros para definir controles de proceso rigurosos ofreciendo algunas separaciones útiles:

  • Por etapa de trabajo (es decir, Previniendo que aquellos que reportan trabajo vean los informes de aseguramiento de calidad después)
  • Por activo (es decir, infraestructura como postes y ductos vs. equipo activo y cables eléctricos por otros)
  • Por conceptos físicos y lógicos (es decir, relaciones como capacidad y consumos entre oficinas vs. la ubicación y características de las oficinas mismas)

Personalizando Autenticación y Autorización para nuevos usuarios

La modificación de cualquiera de estas configuraciones requerirá acceso a "AppSettingSchemasModify" en el perfil del usuario. Esto se concede por defecto a super administradores al acceder a la aplicación, pero puede ser compartido por otros administradores. Para ver los derechos de administrador que tiene un usuario, vea su perfil bajo usuarios (http://tu host/admin/users) y vea Derechos de Administrador.

Verificando Derechos de Administrador

Lo siguiente puede ser personalizado para anular los (predeterminados):

  • Roles para nuevos usuarios
  • Derechos de Administrador para nuevos usuarios