Como fazer a autenticação em nosso sistema
Esta documentação oferece uma explicação detalhada dos métodos e parâmetros necessários para autenticação em um sistema por meio do uso de certificados. Os parâmetros incluem a chave do cliente, chave pública e informações adicionais necessárias para um processo de autenticação seguro.
Geração de Certificado
Para começar a autenticação o usuário deve possuir a permissão “PERMITIR ACESSO A INTEGRAÇÃO VIA API WORKBANK”.
Siga estas etapas para gerar o certificado necessário:
- Acesse a sua página de perfil no portal do WorkBank
- Navegue até a seção de integração, onde será possível gerar a chave pública e a chave do cliente.
A geração de novas credenciais acarretará na revogação de todas as permissões vinculadas às credenciais anteriores, implicando na perda de acesso correspondente. Será necessário atualizar as chaves para as novas credenciais geradas.
Gerar token de acesso
Depois de capturar os certificados, o próximo passo é gerar um token de acesso. Siga as instruções abaixo para realizar esse procedimento.
Este método é responsável por gerar um token destinado a autorizar futuras consultas na API do Workbank. O token concedido tem a validade de uma hora, e uma vez expirado, torna-se necessário gerar um novo token para continuar acessando os recursos da API.
{
string apiUrl = “https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token”;
string clientKey = “<chave_do_cliente>”;
string publicKey = “<chave_publica>”;
string username = “<username>”;_httpClient.DefaultRequestHeaders.Add(“clientKey”, clientKey);
_httpClient.DefaultRequestHeaders.Add(“publicKey”, publicKey);
_httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue(“application/json”));
var requestBody = new
{
username = username
};
var jsonBody = JsonSerializer.Serialize(requestBody);
var content = new StringContent(jsonBody, Encoding.UTF8, “application/json”);
HttpResponseMessage response = await _httpClient.PostAsync(apiUrl, content);
if (response.IsSuccessStatusCode)
{
string responseContent = await response.Content.ReadAsStringAsync();
return Ok(responseContent);
}
else
{
return BadRequest(“Erro na requisição: ” + response.StatusCode);
}
}
<?php
$url = ‘https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token’;
$clientKey = ‘<chave_do_cliente>’;
$publicKey = ‘<chave_publica>’;
$username = ‘<username>’;
$data = array(
‘username’ => $username
);
$headers = array(
‘Content-Type: application/json’,
“clientKey: $clientKey”,
“publicKey: $publicKey”
);
$options = array(
‘http’ => array(
‘header’ => implode(“rn”, $headers),
‘method’ => ‘POST’,
‘content’ => json_encode($data)
)
);
$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
if ($response === FALSE) {
echo “Erro na requisição.”;
} else {
echo $response;
}
?>
import requests
url = ‘https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token’
client_key = ‘<chave_do_cliente>’
public_key = ‘<chave_publica>’
username = ‘<username>’
data = {
‘username’: username
}
headers = {
‘Content-Type’: ‘application/json’,
‘clientKey’: client_key,
‘publicKey’: public_key
}
try:
response = requests.post(url, json=data, headers=headers)
if response.status_code == 200:
print(response.json())
else:
print(f”Erro na requisição: {response.status_code}”)
except requests.exceptions.RequestException as e:
print(f”Erro na requisição: {e}”)
Observações
O processo de geração de certificado e autenticação desempenha um papel crucial na segurança das interações com o sistema WorkBank. Ao seguir os passos acima corretamente, você assegura acesso seguro aos recursos do sistema de maneira eficiente e confiável. É fundamental proteger suas chaves e tokens de acesso para evitar qualquer compartilhamento não autorizado.
Como fazer a autenticação em nosso sistema
Esta documentação oferece uma explicação detalhada dos métodos e parâmetros necessários para autenticação em um sistema por meio do uso de certificados. Os parâmetros incluem a chave do cliente, chave pública e informações adicionais necessárias para um processo de autenticação seguro.
Geração de Certificado
Para começar a autenticação o usuário deve possuir a permissão “PERMITIR ACESSO A INTEGRAÇÃO VIA API WORKBANK”.
Siga estas etapas para gerar o certificado necessário:
- Acesse a sua página de perfil no portal do WorkBank
- Navegue até a seção de integração, onde será possível gerar a chave pública e a chave do cliente.
A geração de novas credenciais acarretará na revogação de todas as permissões vinculadas às credenciais anteriores, implicando na perda de acesso correspondente. Será necessário atualizar as chaves para as novas credenciais geradas.
Gerar token de acesso
Depois de capturar os certificados, o próximo passo é gerar um token de acesso. Siga as instruções abaixo para realizar esse procedimento.
Este método é responsável por gerar um token destinado a autorizar futuras consultas na API do Workbank. O token concedido tem a validade de uma hora, e uma vez expirado, torna-se necessário gerar um novo token para continuar acessando os recursos da API.
{
string apiUrl = “https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token”;
string clientKey = “<chave_do_cliente>”;
string publicKey = “<chave_publica>”;
string username = “<username>”;_httpClient.DefaultRequestHeaders.Add(“clientKey”, clientKey);
_httpClient.DefaultRequestHeaders.Add(“publicKey”, publicKey);
_httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue(“application/json”));
var requestBody = new
{
username = username
};
var jsonBody = JsonSerializer.Serialize(requestBody);
var content = new StringContent(jsonBody, Encoding.UTF8, “application/json”);
HttpResponseMessage response = await _httpClient.PostAsync(apiUrl, content);
if (response.IsSuccessStatusCode)
{
string responseContent = await response.Content.ReadAsStringAsync();
return Ok(responseContent);
}
else
{
return BadRequest(“Erro na requisição: ” + response.StatusCode);
}
}
<?php
$url = ‘https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token’;
$clientKey = ‘<chave_do_cliente>’;
$publicKey = ‘<chave_publica>’;
$username = ‘<username>’;
$data = array(
‘username’ => $username
);
$headers = array(
‘Content-Type: application/json’,
“clientKey: $clientKey”,
“publicKey: $publicKey”
);
$options = array(
‘http’ => array(
‘header’ => implode(“rn”, $headers),
‘method’ => ‘POST’,
‘content’ => json_encode($data)
)
);
$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
if ($response === FALSE) {
echo “Erro na requisição.”;
} else {
echo $response;
}
?>
import requests
url = ‘https://sandbox-api.workbankvirtual.com.br/api/auth-hml/v1/token’
client_key = ‘<chave_do_cliente>’
public_key = ‘<chave_publica>’
username = ‘<username>’
data = {
‘username’: username
}
headers = {
‘Content-Type’: ‘application/json’,
‘clientKey’: client_key,
‘publicKey’: public_key
}
try:
response = requests.post(url, json=data, headers=headers)
if response.status_code == 200:
print(response.json())
else:
print(f”Erro na requisição: {response.status_code}”)
except requests.exceptions.RequestException as e:
print(f”Erro na requisição: {e}”)
Observações
O processo de geração de certificado e autenticação desempenha um papel crucial na segurança das interações com o sistema WorkBank. Ao seguir os passos acima corretamente, você assegura acesso seguro aos recursos do sistema de maneira eficiente e confiável. É fundamental proteger suas chaves e tokens de acesso para evitar qualquer compartilhamento não autorizado.