Creación de usuarios de GBS SMART
Visión general
Este manual detalla el procedimiento para la creación de usuarios de GBS SMART.
Todo usuario debe tener una cuenta en el LDAP para iniciar sesión.
Todas las configuraciones y datos de GBS Smart se encuentran dentro del esquema SMART.
La tabla
Usercontiene información básica sobre el usuario.La tabla
UserPermissionrelaciona usuarios con sus permisos a través de los camposUserIdyPermissionId(ver Lista de permisos disponibles).La tabla
UserStationrelaciona usuarios con estaciones a través de los camposUserIdyStationId.
Procedimiento
Crear un nuevo puesto de trabajo en la tabla Station
Para crear un nuevo puesto de trabajo, o estación, inserte un registro en la tabla SMART.Station llenando las siguientes columnas:
StationId: Rellene con un ID incremental de la estación.Description: Rellene con el nombre de la estación.MandatoryConference: Indique si las transacciones del puesto deberán ir a conferencia obligatoria (1para sí,0para no).CityId: Indique el ID de la ciudad en la que se ubica la estación.
Crear un nuevo usuario en la tabla User
Para crear un nuevo usuario, inserte un registro en la tabla SMART.User llenando las siguientes columnas:
CPF: Rellene con el CPF del usuario.Username: Rellene con el nombre de usuario.Admin: Indique si el usuario es administrador (1para sí,0para no).Active: Indique si el usuario está activo (1para activo,0para inactivo). El valor predeterminado es1.Pguid(opcional): Rellene con el PGUID del usuario en la base biométrica.
Asignar permisos al usuario en la tabla UserPermission
Después de crear el usuario, es necesario asignar sus permisos. Para ello, inserte un registro en la tabla SMART.UserPermission por cada permiso que el usuario debe tener, relacionando el UserId con el PermissionId.
Lista de permisos disponibles
El PermissionId está especificado en la siguiente tabla:
1
Permiso de listado de registro civil, 2ª vía, etc.
CIVIL
2
Permiso de listado de registro criminal.
CRIMINAL
3
Permiso de visualización de la pantalla de layout.
LAYOUT
4
Permiso de visualización de la pantalla de búsqueda avanzada.
PESQUISA
5
Permiso para realizar captura de biometrias.
CAPTURA
6
Permiso para realizar descarga de biometrias, impresión de protocolo y expediente.
DOWNLOAD
7
Permiso para realizar verificación de biográficos.
CONFERENCE
8
Permiso para realizar la baja de malotes.
PACKAGE
Asociar el usuario a una estación en la tabla UserStation
Inserte un registro en la tabla UserStation relacionando el UserId con el StationId. La estación debe estar configurada previamente en la tabla SMART.Station, como se explicó anteriormente.
UserId: Utilice elUserIddel usuario, tal como consta en la tablaSMART.User.StationId: Rellene con el ID de la estación a la cual el usuario será asociado, tal como consta en la tablaSMART.Station.
Procedure de creación de Usuario, asignación de puesto y permisos
DELIMITER //
CREATE PROCEDURE InsertNewUser(
IN p_CPF VARCHAR(14),
IN p_Username VARCHAR(64),
IN p_Admin TINYINT(1),
IN p_Active TINYINT(1),
IN p_Pguid VARCHAR(100),
IN p_StationId INT,
IN p_Permissions VARCHAR(100) -- Permisos separados por comas (ej: '1,4,5,6,7')
)
BEGIN
DECLARE user_id INT;
DECLARE perm_pos INT DEFAULT 1;
DECLARE perm_length INT;
DECLARE current_permission VARCHAR(10);
DECLARE done INT DEFAULT 0;
-- Inserta un nuevo usuario en la tabla User
INSERT INTO `User` (`CPF`, `Username`, `Admin`, `Active`, `Pguid`)
VALUES (p_CPF, p_Username, p_Admin, p_Active, p_Pguid);
-- Obtiene el último ID insertado en la tabla User
SET user_id = LAST_INSERT_ID();
-- Bucle para insertar los permisos
read_loop: LOOP
SET perm_length = LOCATE(',', p_Permissions, perm_pos) - perm_pos;
IF perm_length < 0 THEN
SET perm_length = LENGTH(p_Permissions) - perm_pos + 1;
SET done = 1;
END IF;
SET current_permission = SUBSTRING(p_Permissions, perm_pos, perm_length);
-- Insertar permiso en la tabla UserPermission
INSERT INTO `UserPermission` (`UserId`, `PermissionId`)
VALUES (user_id, current_permission);
IF done = 1 THEN
LEAVE read_loop;
END IF;
SET perm_pos = LOCATE(',', p_Permissions, perm_pos) + 1;
END LOOP read_loop;
-- Inserta asociación del nuevo usuario con una estación en la tabla UserStation
INSERT INTO `UserStation` (`UserId`, `StationId`)
VALUES (user_id, p_StationId);
END //
DELIMITER ;Ejemplo de llamada al procedure
Argumentos:
CPF (solo números)
Username (igual al LDAP)
Admin (
0: false,1: true)Activo (
0: false,1: true)PGUID del GBDS (buscar CPF en el GBDS)
ID de la estación
Permisos separados por comas
Llamar al procedimiento almacenado para insertar un nuevo usuario:
CALL InsertNewUser('12345678900', 'new_user', 0, 1, NULL, 1,'1,4,5,6,7');El ejemplo anterior crea un nuevo usuario con CPF 123.456.789-00, nombre de usuario new_user, no administrador, activo, sin PGUID, asociado a la estación con ID 1 y con los permisos 1,4,5,6,7.
Última actualización
¿Te fue útil?

