Presentación del control de acceso
Si diferentes personas utilizan una aplicación, lo que suele ocurrir en la arquitectura cliente-servidor o de interfaces web, es necesario controlar el acceso u ofrecer diferentes funcionalidades según de los usuarios conectados. También es esencial ofrecer la seguridad de los datos sensibles, incluso en las aplicaciones monopuesto.
La estrategia de control de acceso 4D depende de la configuración de su despliegue:
- en las aplicaciones multiusuario, puede confiar en los usuarios y grupos 4D,
- en las aplicaciones monopuesto, el acceso de los usuarios se controla a través de la sesión del sistema, mediante comandos como
Current system user
.
Consulte la documentación Guía de seguridad de 4D para una visión de conjunto de las funciones de seguridad de 4D.
Control de acceso en las aplicaciones multiusuario
Las aplicaciones multiusuario se despliegan con 4D Server. Incluyen aplicaciones cliente-servidor, web o REST.
En las aplicaciones multiusuario, el control de acceso se realiza a través de usuarios y grupos 4D. Puede crear usuarios, asignar contraseñas, crear grupos de acceso con diferentes niveles de privilegios en la aplicación.
Inicie el sistema de control de acceso por contraseña 4D con 4D Server, asignando una contraseña al usuario Diseñador. Hasta que no le asigne una contraseña al Diseñador, todos los accesos a la aplicación se hacen con los derechos de acceso del Diseñador, incluso si ha configurado usuarios y grupos (cuando se abre la aplicación, no se requiere ninguna identificación). Se puede abrir cualquier parte de la aplicación.
Cuando se asigna una contraseña al Diseñador, todos los privilegios de acceso entran en vigor. Para conectarse a la aplicación o a un servidor con acceso protegido, los usuarios remotos deben introducir un nombre de usuario/contraseña.
Para desactivar el sistema de acceso por contraseña, basta con eliminar la contraseña del Diseñador.
Control de acceso en las aplicaciones monopuesto
Las aplicaciones monopuesto son aplicaciones de escritorio, desplegadas con 4D o fusionadas con 4D Volume License. En las aplicaciones monopuesto todos los usuarios que abren la aplicación son los Diseñadores, tienen todos los privilegios y su nombre es "Diseñador". El control de acceso no se basa en los usuarios y los grupos de 4D, sino en las sesiones usuario.
Identificación del usuario
Para identificar el usuario actual en una aplicación 4D monopuesto, puede confiar en el comando Current system user
, que devuelve el usuario que abrió la sesión sistema. Por lo tanto, la autenticación de los usuarios se delega al sistema operativo.
A continuación, puede permitir o denegar el acceso dentro de su aplicación utilizando un código como:
If(Current system user = $user) //vous pouvez stocker les utilisateurs dans une table de base de données
// dar acceso a algunas funcionalidades
Enf if
Si desea utilizar el nombre de usuario del sistema en 4D en lugar de "Diseñador" (por ejemplo en los archivos de registro), puede llamar al comando SET USER ALIAS
, por ejemplo:
SET USER ALIAS(Current system user)
Protección del acceso
Privilegios
En una máquina compartida por varios usuarios, puede instalar la aplicación 4D en una carpeta y dar privilegios de acceso usuario apropiados a la carpeta a nivel del sistema operativo.
Cifrado de datos
Si desea proteger el acceso a los datos de la aplicación, se recomienda encriptar los datos y proveer la clave de encriptación al usuario o usuarios autorizados.