Business Central 2021 release wave 1 (v18) introdujo un nuevo modelo de permisos en BC.
En versiones anteriores, los conjuntos de permisos y los permisos se definen sólo como datos, lo que significa que se almacenan en las tablas de la aplicación y las bases de datos de los tenant.
Mantener información tan sensible como datos conlleva riesgos adicionales de mantenimiento, seguridad y auditoría para los desarrolladores de software. Idealmente, los cambios aplicados a estos datos deberían ser bien rastreables, fáciles de actualizar y mantener. A partir de la primera fase de lanzamiento de Business Central 2021, los permisos y las autorizaciones del sistema se definen en el código, utilizando los objetos Entitlement, PermissionSet y PermissionSetExtension AL. Este cambio brinda a los desarrolladores todas las ventajas de usar la extensión AL Language en Visual Studio Code y los sistemas de control de código fuente (como Visual Studio Online y GitHub) para diseñar, obtener una descripción general y realizar un seguimiento de los cambios en los objetos que describen el acceso de los usuarios.
Convertir estos datos en código tiene otra ventaja significativa: la capacidad de aplicar revisiones a los derechos y permisos de la misma manera que las revisiones se aplican a las aplicaciones en sí, simplemente actualizando una aplicación a una nueva versión que lleva un código fijo. Esto mejora considerablemente la agilidad del soporte de Business Central y, en última instancia, mejora la satisfacción del cliente con el servicio.
Y, por último, se prevé que los nuevos objetos AL se conviertan en los componentes básicos de la historia de la monetización de las aplicaciones AppSource. Es a través de estos nuevos objetos AL que los ISV de AppSource podrán definir qué capacidades de sus aplicaciones deberían estar disponibles para sus usuarios, cuando los clientes compren sus licencias de aplicaciones. Con Business Central 2021 Release Wave 1, estamos allanando el camino al mover los derechos y conjuntos de permisos a objetos AL para aplicaciones de Microsoft, de modo que los ISV puedan seguir el mismo enfoque para sus aplicaciones, cuando se presente la historia de monetización con uno próximas versiones de Business Central.
Los conjuntos de permisos definidos por el usuario y los permisos, y la funcionalidad a su alrededor, permanecen sin cambios. Todavía se almacenan como datos en la base de datos de inquilinos:
- Permiso de inquilino
- Conjunto de permisos de inquilino
Los conjuntos de permisos y los permisos incluidos con las aplicaciones en formato XML seguirán funcionando como antes, sin embargo, le recomendamos que comience a usar los objetos AL de tipo PermissionSety en su PermissionSetExtensionlugar.
Por lo tanto, los conjuntos de permisos y los permisos ahora se pueden definir en código AL.
Se crean utilizando el conjunto de permisos y los objetos de extensión de permisos en el código AL, luego se empaquetan en extensiones.
Para mas información https://docs.microsoft.com
Los permisos como objetos AL son ahora el modelo predeterminado en Business Central.
Verá este cambio, por ejemplo, si instala la base de datos de demostración v18. Si ve las tablas relacionadas con los permisos en la base de datos, como las tablas Permission Set y Permission, notará que las tablas están casi vacías.
Si usted está pensando en migrar, aunque se recomienda realizar la transición a permisos definidos como objetos AL, puede optar por continuar usando el modelo de permisos heredado basado en datos. Deberá especificar qué modelo de permisos usa su solución cambiando la configuración de Business Central Server denominada Usar conjuntos de permisos desde extensiones.
Cuando actualice desde una versión anterior, decida qué modelo desea utilizar.
Importante: La capacidad de utilizar conjuntos de permisos definidos como datos ha quedado obsoleta y se eliminará en una próxima versión.