Configurações > Configurações Gerais do Sistema > Autenticação Remota

A autenticação remota pode ser utilizada para aproveitar sua base de usuários sem que eles precisem se cadastrar no Acelerato. A seguir veja como fazer esta configuração:

Permissão: Para ter acesso a esta configuração é necessário possuir a permissão de Administrador.

Etapa 1 – Acesse o menu Configurações > Configurações Gerais do Sistema > Autenticação Remota

1

Etapa 2 – Ative a autenticação remota escolhendo sim no combo, e verá um formulário como a seguir.


2

Deverão ser fornecidos os seguintes dados:

  • A URL para a qual seus usuários serão redirecionados para realizarem a autenticação em seu sistema;
  • A URL para a qual serão redirecionados quando realizarem logout no Acelerato.

Etapa 3 -Salve essas informações clicando no botão Salvar.

Após salvar as alterações, um Token de segurança, utilizado para autenticar todas as requisições de autenticação remotas, será gerado e exibido na tela. Caso necessário, é possível gerar novos tokens de autenticação, invalidando o anterior, clicando no botão abaixo deste campo.
3

Tendo o Token para Autenticação em mãos, pode-se preparar o script para autenticação remota, de acordo com suas preferências.

Este script deve chamar a URL http://cliente.acelerato.com/logar/remoto passando os seguintes parâmetros:


name:

O nome do usuário requisitando autenticação. Este nome será utilizado para cadastrar o usuário caso o e-mail informado não esteja vinculado a nenhum usuário.


email:

O e-mail do usuário requisitando autenticação. Este e-mail será utilizado para buscar o usuário na base de dados do Acelerato. Caso não seja encontrado nenhum usuário, o sistema cadastrará automaticamente um usuário utilizando este e-mail.


token:

Token gerado pelo sistema na ativação da autenticação remota.

Com esta opção ativada, novos usuários não receberão e-mails para definir senha, no cadastro, pois esta responsabilidade é passada para o sistema remoto.

Importante: Caso precise realizar login pelo Acelerato, por exemplo por erros no script de autenticação, após ter ativado a autenticação remota, você pode entrar na URL
http://cliente.acelerato.com/login/normal.

Abaixo, segue um exemplo de implementação do script para autenticação remota, em Java:

public class ExemploDeAutenticacaoServlet extends HttpServlet {
  private static final long serialVersionUID = 8223552608206882450L;
  private final String URL_PARA_AUTENTICACAO = "https://cliente.acelerato.com/logar/remoto";
  private final String TOKEN_PARA_AUTENTICACAO = "IolC/O+C2bGxBNFbtiuewA==";

  @Override
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
    response.sendRedirect(getUrlParaRedirecionamento());
  }

  private String getParametrosParaLogin() {
    // Nome completo do Usuário requisitando autenticação
    String name = "Usuário";

    // E-mail do Usuário requisitando autenticação
    String email = "usuario@email.com";

    // String utilizada para geração do hash de segurança
    String toHash = name + email + TOKEN_PARA_AUTENTICACAO;

    // Hash SHA256 gerado para validação da autenticidade da requisição
    // Para esse exemplo, utilizamos o Apache Commons para geração do Hash
    String hash = DigestUtils.sha256Hex(toHash.getBytes("ISO-8859-1"));

    String parametros = "name=" + encodeParametro(name) + "&email=" + encodeParametro(email) + "&hash=" + encodeParametro(hash);

    return parametros;
  }

  private String encodeParametro(String value) {
    try {
      return URLEncoder.encode(value, "ISO-8859-1");
    } catch(Exception e) {
      return null;
    }
  }

  private String getUrlParaRedirecionamento() {
    return URL_PARA_AUTENTICACAO + "?" + getParametrosParaLogin();
  }
}

Abaixo, segue um exemplo de implementação do script para autenticação remota, em PHP:

$baseURL = 'https://cliente.acelerato.com/logar/remoto';

// Nome completo do Usuário requisitando autenticação
$nome = 'Usuário';

// E-mail do Usuário requisitando autenticação
$email = 'usuario@email.com';

// Token fornecido pelo Acelerato
$token = 'IolC/O+C2bGxBNFbtiuewA==';

// Hash SHA256 gerado para validação da autenticidade da requisição
$hash = hash('sha256', utf8_decode($nome.$email.$token));

// String para redirecionamento
$loginURL = $baseURL."?name=".urlencode($nome)."&email=".urlencode($email)."&hash=".urlencode($hash);

Esta postagem foi útil?

Equipe Acelerato

Leave a Reply