Utilizamos o método de autenticação OAuth 2.0, um padrão da indústria para autorização, para garantir a segurança e a integridade da identificação de usuários e sistemas.
Esse método envolve a geração de tokens que permitem o acesso seguro aos nossos servidores, softwares e APIs. A autenticação através do OAuth 2.0 ajuda a prevenir fraudes cibernéticas e o vazamento de informações confidenciais, utilizando criptografia de chave pública para validar as identidades.
1
Criação das Chaves Pública e Privada
Antes de receber a credencial, é necessário gerar um par de chaves: uma chave privada e outra pública. A chave privada será utilizada para assinar o token, enquanto a chave pública deverá ser enviada a nós para validar a assinatura do token.Primeiramente gere a chave privada utilizando o comando abaixo via terminal:
Copy
Ask AI
openssl genrsa -out private.pem 2048
Posteriormente gere a chave pública através do terminal:
Copy
Ask AI
openssl rsa -in private.pem -pubout > public.pem
Guarde a chave privada em local seguro e nunca a compartilhe.
2
Solicitação da chave pública
Solicitaremos seu e-mail para abrir uma requisição referente ao envio da chave pública.
Após isso, você receberá uma mensagem do notifications@heflo.com com as instruções para envio da chave.
Envie somente sua chave pública para validação do nosso time, respondendo ao e-mail de solicitação do HEFLO, sem adicionar outras pessoas em cópia por segurança. Caso outras pessoas sejam copiadas, isso invalidará o recebimento da chave pública.
3
Recebimento do client_id
Após a validação da sua chave pública, nossa equipe irá gerar e enviar o seu client_id, que será utilizado para a autenticação no sistema.
4
Geração do JWT
Gere um TOKEN seguindo o padrão RS256, contendo informações cruciais como identificador único, tempo de emissão e expiração.
Copy
Ask AI
const tokenHeader = {alg: "RS256", // 'alg': Algoritmo usado para assinar o token (RS256 - RSA com SHA-256).typ: "JWT" // 'typ': Tipo do token, no caso, JWT.};const tokenPayload = {jti: "5e8e07e3-d3f0-4881-a644-0895f4949e9b", // 'jti': ID único do token.sub: "client_id", // 'sub': Identificador do cliente (preencher com o client_id enviado pelo nosso time).iat: 1573648398, // 'iat': Data e hora em que o token foi emitido (timestamp UNIX em segundos).nbf: 1573648398, // 'nbf': Data e hora antes da qual o token não deve ser aceito (timestamp UNIX).exp: 1573648458, // 'exp': Data de expiração do token (timestamp UNIX).iss: "client_id", // 'iss': Emissor do token (preencher com o client_id enviado pelo nosso time).aud: "https://auth.moneyp.dev.br/connect/token" // 'aud': Destinatário do token (verifica se o token é enviado ao servidor correto).};
5
Endpoint de geração de Bearer Token
Para gerar um TOKEN utilizando o método OAuth 2.0, o cliente deve enviar uma requisição POST com o Header Content-Type “x-www-form-urlencoded”, abaixo o CURL do endpoint que será utilizado para gerar o token:
O nosso Bearer Token, uma vez gerado, tem uma validade de 1 hora. Após esse período, será necessário gerar um novo token para garantir a continuidade da sessão de forma ativa e segura