01. DADOS GERAIS
Produto: | TOTVS Logística Recintos Aduaneiros
|
---|---|
Linha de Produto: | Linha Logix |
Segmento: | Logística |
Módulo: | Serviço de autenticação OAuth2 |
Função: | Serviço de autenticação OAuth2 |
Ticket: | |
Requisito/Story/Issue (informe o requisito relacionado) : |
02. SITUAÇÃO/REQUISITO
Para atendimento da demanda de autenticação, para o produto TOTVS Recintos Aduaneiros, através do protocolo OAuth2 foi estabelecida a componentização da classe de login a ser realizado na aplicação.
03. SOLUÇÃO
A classe depende do componente de conexão desenvolvido para o processo de login sob o protocolo OAuth2.
São métodos exportados pela classe:
- doLogin(usuario, senha, clientID, clientSecret)
Para utilização da classe em aplicações Node.JS, seguem exemplos de uso deste componente.
Execução da ação de login:
console.log('Performing login action...'); let login = require('./components/login'); let user = '00000000191'; let password = 'User@1234567'; let clientID = 'de3af1da1717b2c768aadbcae8b94f33'; let clientSecret = '0c02d8b3073e519a363f675497a8d943'; console.log('User: %s', user); console.log('Password: %s', password); console.log('Client ID: %s', clientID); console.log('Client Secret: %s', clientSecret); login.doLogin(user, password, clientID, clientSecret).then(result => { console.log(result); });
Resultado esperado:
{ codigo: 1, login: true, alterarSenha: true, clientID: true, clientSecret: true }
Os valores dos campos login, alterarSenha, clientID e clientSecret são do tipo boolean indicando, respectivamente, sucesso na ação de login, se o usuário deve alterar sua senha, se o valor de Client ID fornecido está correto e se o valor de Client Secret fornecido está correto.
O campo código, no objeto de retorno, indica um possível erro no processamento do evento de login, segundo a seguinte tabela:
Código | Constante | Mensagem |
---|---|---|
0x0000 | RESULT_OK | Processamento sem falhas. |
0x0001 | CHANGE_PASSWORD | Processamento sem falhas, mas usuário deve alterar a sua senha. |
0x0002 | LOGIN_FAIL | Falha no processamento do login (usuário ou senha inválidos). |
0x0004 | CLIENT_ID_FAIL | Client ID fornecido difere do valor parametrizado na aplicação. |
0x0008 | CLIENT_SECRET_FAIL | Client Secret fornecido difere do valor parametrizado na aplicação. |
04. DEMAIS INFORMAÇÕES
Por ser dependente do componente de conexão com o banco de dados, este também deve estar presente no projeto ao ser utilizado.