Criação de usuários do GBS SMART
Visão Geral
Este manual detalha o procedimento para criação de usuários do GBS SMART.
Todo usuário deve ter uma conta no LDAP para login.
Todas as configurações e dados do GBS Smart ficam dentro do schema SMART.
A tabela
Usercontém informações básicas sobre o usuário.A tabela
UserPermissionrelaciona usuários com suas permissões através dos camposUserIdePermissionId(ver Lista de Permissões Disponíveis).A tabela
UserStationrelaciona usuários com estações através dos camposUserIdeStationId.
Procedimento
Criar um novo posto de trabalho na tabela Station
Para criar um novo posto de trabalho, ou estação, insira um registro na tabela SMART.Station preenchendo as seguintes colunas:
StationId: Preencha com um ID incremental da estação.Description: Preencha com o nome da estação.MandatoryConference: Indique se as transações do posto deverão ir para conferência obrigatória (1para sim,0para não).CityId: Indique o ID da cidade em que a estação se localiza.
Criar um novo usuário na tabela User
Para criar um novo usuário, insira um registro na tabela SMART.User preenchendo as seguintes colunas:
CPF: Preencha com o CPF do usuário.Username: Preencha com o nome de usuário.Admin: Indique se o usuário é administrador (1para sim,0para não).Active: Indique se o usuário está ativo (1para ativo,0para inativo). O valor padrão é1.Pguid(opcional): Preencha com o PGUID do usuário na base biométrica.
Atribuir permissões ao usuário na tabela UserPermission
Após criar o usuário, é preciso atribuir suas permissões. Para isso, insira um registro na tabela SMART.UserPermission para cada permissão que o usuário deve ter, relacionando o UserId com o PermissionId.
Lista de permissões disponíveis
O PermissionId está especificado na tabela a seguir:
1
Permissão de listagem de cadastro civil, 2º via, etc.
CIVIL
2
Permissão de listagem de cadastro criminal.
CRIMINAL
3
Permissão de visualização da tela de layout.
LAYOUT
4
Permissão de visualização da tela de busca avançada.
PESQUISA
5
Permissão para realizar captura de biometrias.
CAPTURA
6
Permissão para realizar download de biometrias, impressão de protocolo e prontuário.
DOWNLOAD
7
Permissão para realizar conferência de biográficos.
CONFERENCE
8
Permissão para realizar a baixa de malotes.
PACKAGE
Associar o usuário a uma estação na tabela UserStation
Insira um registro na tabela UserStation relacionando o UserId com o StationId. A estação deve estar configurada previamente na tabela SMART.Station, como explicado anteriormente.
UserId: Utilize oUserIddo usuário, como consta na tabelaSMART.User.StationId: Preencha com o ID da estação à qual o usuário será associado, como consta na tabelaSMART.Station.
Procedure de criação de Usuário, alocação de posto e permissões
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) -- Permissões separadas por vírgula (ex: '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;
-- Insere um novo usuário na tabela User
INSERT INTO `User` (`CPF`, `Username`, `Admin`, `Active`, `Pguid`)
VALUES (p_CPF, p_Username, p_Admin, p_Active, p_Pguid);
-- Obtém o último ID inserido na tabela User
SET user_id = LAST_INSERT_ID();
-- Loop para inserir as permissões
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);
-- Inserir permissão na tabela 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;
-- Insere associação do novo usuário com uma estação na tabela UserStation
INSERT INTO `UserStation` (`UserId`, `StationId`)
VALUES (user_id, p_StationId);
END //
DELIMITER ;Exemplo de chamada do procedure
Argumentos:
CPF (somente números)
Username (igual ao LDAP)
Admin (
0: false,1: true)Ativo (
0: false,1: true)PGUID do GBDS (procurar CPF no GBDS)
ID da estação
Permissões separadas por vírgula
Chamar o procedimento armazenado para inserir um novo usuário:
CALL InsertNewUser('12345678900', 'new_user', 0, 1, NULL, 1,'1,4,5,6,7');O exemplo acima cria um novo usuário com CPF 123.456.789-00, nome de usuário new_user, não administrador, ativo, sem PGUID, associado à estação com ID 1 e com as permissões 1,4,5,6,7.
Atualizado
Isto foi útil?

