Autorização
Agora que você já tem acesso ao sistema e testou as funcionalidades básicas, vamos avançar para o uso de autorização M2M (machine to machine) em que a autenticação gerada pelo usuário e senha permite acesso por outras aplicações através de chaves de acesso.
Autorizar Cliente [POST]
BASE URL
https://auth-hml.carbonext.com.br/auth/realms/co2free/protocol/openid-connect/token
Esta solicitação valida as credenciais fornecidas e retorna o token gerado.
Atributos do Parâmetro
Parâmetro | Valor |
---|---|
client_id | A chave de credencial pública do cliente |
client_secret | A chave de credencial privada do cliente |
grant_type | client_credentials |
Atributos da resposta
Parâmetro | Descrição |
---|---|
accessToken | Um token usado para autorizar o acesso do usuário |
token_type | O tipo do token |
expires_in | A quantidade de tempo até que o token expire, números em segundos |
refresh_token | O token de atualização fornecido na requisição de autorização |
Exemplo de Requisição
var axios = require('axios');
var qs = require('qs');
var data = qs.stringify({
'client_id': '<your_client_id>',
'client_secret': '<your_client_secret>',
'grant_type': 'client_credentials',
'scope': 'roles'
});
var config = {
method: 'post',
url: 'https://auth-hml.carbonext.com.br/auth/realms/co2free/protocol/openid-connect/token',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
Exemplo de Resposta
{
"access_token": "kRjvJJpQpwWHoWKi-K_5SO0w0dkAqiO2QudmyoJxlTI",
"expires_in": 36000,
"refresh_expires_in": 0,
"token_type": "Bearer",
"not-before-policy": 0,
"scope": "profile email roles"
}