Geração do token de segurança
Este tópico lista as características do WebService Json de geração do token de segurança.
Este método deverá ser chamado antes de qualquer requisição à outros métodos que necessitem do token.
O token gerado é válido por 35 segundos, e apenas é possível utilizá-lo uma vez. Apenas usuários que são administradores (que tenham acesso ao sistema EDU02) podem gerar tokens.
Nome do método: getTokenParaIntegracao
1. Parâmetros para chamada do WebService
Parâmetro | Descrição | Obrigatório | Tipo | Observação |
---|---|---|---|---|
usuario | Usuário administrador do sistema MentorWeb | Sim | String | Informar o usuário administrador da aplicação MentorWeb. |
senha | Senha criptografada | Sim | String(32) | É a senha do usuário criptografada em SHA1, com mais algumas informações para garantir a segurança da passagem de senha na requisição. Consulte abaixo como deverá ser montada esta senha: Senha para integração (Acesso restrito) ![]() |
chave | Chave para garantir a segurança da senha repassada | Sim | String(46) | Chave que garante a integridade dos dados passados na requisição. Confira abaixo como montá-la: Chave para integração (Acesso restrito) ![]() |
2. Exemplo de chamada do WebService
URL: http://IP:PORTA/APLICACAO/rest/ICorujaCOM/getTokenParaIntegracao
2.1. Exemplo da passagem de parâmetros por Json:
{ "usuario":"admin", "senha":"e715353481f056cd325e07279d6548b5" }
2.2. Exemplo de chamada do WebService na linguagem PHP
<?php header('Content-Type: text/html; charset=utf-8'); $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_PORT => "8080", CURLOPT_URL => "http://192.168.0.66:8080/ICoruja/rest/ICorujaCOM/getTokenParaIntegracao", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => '{"usuario":"","senha":"e715353481f056cd325e07279d6548b5"}', CURLOPT_HTTPHEADER => array( "cache-control: no-cache", "content-type: application/json", "postman-token: 74e6008c-0675-fb7c-87d0-23adcbeddd9a" ) )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } ?>
2.3. Exemplo de chamada do WebService no PostMan
3. Retorno do WebService Json
Para obter o retorno do WebService deve-se verificar o status da requisição http. Sempre que o status for 200, significa que o processo foi realizado com sucesso, e o valor foi inserido corretamente.
3.1. Atributos retornados do WebService para o chamador
Campo | Descrição | Tipo | Observação |
---|---|---|---|
chave | Retorna a descrição “token” | String(5) | Valor fixo, “token”. É o nome do parâmetro que deverá ser enviado no cabeçalho da requisição rest dos demais métodos. |
valor | Retorna o valor do token | String(40) | Retorna o valor do token. Esse valor deverá ser passado no cabeçalho da requisição dos demais métodos. |
Para obter o retorno do WebService deve-se verificar o status da requisição http.
Sempre que o status for 200, significa que o processo foi realizado com sucesso, e o token foi gerado corretamente. Neste caso, o retorno é apresentado conforme o exemplo abaixo:
{ "chave": "token", "valor": "e2470b8bc44fcdc4ed8d645e870d4efa6f14d355" }
Caso o código de status não for 200, ocorreu alguma falha.
Quando ocorre alguma falha tratada, o WebService irá retornar conforme exemplo abaixo, onde o código do erro deverá ser consultado no tópico 3.2. Possíveis retornos para o chamador do WebService:
{ "codigoErroClass": "com.edusoft.security.auth.types.TipoErroSecurity", "codigoErro": "SEC_00402", "central": false }
3.2. Possíveis retornos para o chamador do WebService
Código | Descrição | Observação |
---|---|---|
ICM_00400 | Parâmetros inválidos | Ocorre quando não foram informados os parâmetros de usuário, senha ou chave. |
SEC_00401 | Usuário não é administrador do sistema | Ocorre quando o usuário enviado como parâmetro não é um administrador do sistema MentorWeb. |
SEC_00402 | Usuário com login e senha informado não foi encontrado. | Ocorre quando não conseguiu recuperar encontrar o usuário com base no usuário e senha enviados. |
SEC_00403 | Conexão não é segura | Ocorre quando a aplicação do MentorWeb não está rodando em um ambiente https. Para garantir a segurança, essa integração só é permitida neste ambiente e por esse motivo o token não é gerado. |
SEC_00405 | Senha inválida | A senha deve ter 46 caracteres. |
SEC_00406 | O token não pôde ser gerado. | Consulte a mensagem de erro. Verifique se todos os parâmetros foram passados de forma correta, conforme documentação. |