Pular para o conteúdo principal

Credenciais de acesso

Visão Geral

Por estarem relacionados ao acesso a APIs, a identificação de um consumidor está atrelada a uma credencial. As credenciais são necessárias para autenticar os consumidores por meio de um mecanismo de autenticação, como Basic Authentication, Key Authentication, OAuth, entre outros. Para saber mais sobre consumidores de APIs, acesse a seção Consumidores de APIs do Dev Portal.

O tipo de credencial depende do tipo de autenticação presente na API. Por exemplo, uma API protegida por autenticação Basic Authentication requer uma credencial composta por um usuário e uma senha; uma API protegida por Key Authentication requer uma credencial composta por uma API key. Portanto, se uma API é protegida por um mecanismo de autenticação, é necessário possuir um consumidor e credenciais correspondentes ao tipo de autenticação para acessá-la.

O DHuO possibilita a criação de credenciais para os seguintes tipos de autenticação:

  • Basic Authentication
  • Key Authentication
  • JWT Authentication

Após criar a credencial correspondente ao tipo de autenticação suportado pela API, é possível consumí-la. A forma de envio das credenciais varia conforme o tipo de autenticação configurado pelo provedor da API. As instruções devem ser fornecidos por ele na documentação da API.

Atenção!

É necessário habilitar a opção de criação de credenciais no portal para que a página de consumidores de APIs esteja visível. Para saber mais sobre como configurar essa opção, acesse a seção Ambientes da Administração do Dev Portal.

Configuração

As credenciais são criadas no contexto do consumidor de APIs. A partir da home, acesse o menu > Consumidores de APIs. Na página de consumidores, acesse a opção Credenciais do consumidor desejado. Na página seguinte, acesse o menu conforme o tipo de credencial a ser configurada.

Informação adicional

Os tipos de credenciais exibidos no menu dependem dos tipos de credenciais habilitados na configuração do portal. Para saber mais sobre como configurar essa opção, acesse a seção Ambientes da Administração do Dev Portal.

Um consumidor pode ter mais de uma credencial, porém apenas uma credencial por tipo de autenticação.

Atenção!

Não é possível alterar uma credencial após a criação. Caso seja necessário alterar uma credencial, é preciso removê-la e criar uma nova.

Cuidado!

Ao excluir uma credencial, os acessos às APIs das aplicações que a utilizam deixarão de funcionar até que novas credenciais sejam criadas e as aplicações sejam atualizadas com os novos valores.

Configuração Basic Authentication

As credenciais para Basic Authentication são geradas automaticamente. Acesse o menu > Basic Auth para gerenciar a credencial.

Parâmetros

Aqui estão os parâmetros para configuração de uma credencial Basic Auth:

  • Nome do usuário: Obrigatório. O nome de usuário a ser usado na autenticação do consumidor nas requisições de API.
  • Senha: Obrigatório. A senha a ser usada na autenticação do consumidor nas requisições de API.

Configuração Key Authentication

As credenciais para Key Authentication são geradas automaticamente. Acesse o menu > API Key para gerenciar a credencial.

Parâmetros

Aqui estão os parâmetros para configuração de uma credencial API Key:

  • Chave: Obrigatório. A chave a ser usada na autenticação do consumidor nas requisições de API.

Configuração JWT Authentication

As credenciais para JWT Authentication são definidas com base nas informações utilizadas para gerar e assinar um token JWT enviado nas requisições de API. Os detalhes para geração do JWT devem ser fornecidos pelo provedor da API.

Parâmetros

Aqui estão os parâmetros para configuração de uma credencial JWT:

  • Key: Obrigatório. Gerado automaticamente. Chave a ser usada na claim do token JWT. A claim padrão é iss, mas pode ser customizada pelo provedor da API. Durante o processo de autenticação é realizado a busca pela claim no token JWT e seu valor (a key) utilizado para identificar o consumidor.
  • Algoritmo: Obrigatório. Algoritmo usado para verificar a assinatura do token.
  • Secret: Secret usada para assinar o token JWT gerado pelo consumidor de API. Usada para verificar a assinatura de tokens gerados usando algoritmos simétricos como HS256, HS384 ou HS512. Se não informada, será gerado automaticamente.
  • Public Key RSA: Chave pública (em formato PEM) usada para verificar a assinatura de tokens gerados usando algoritmos assimétricos como RS256, RS384, RS512, ES256, ES384, ES512. Obrigatório se escolhido algum algoritmo assimétrico.
Informação adicional

Caso as APIs disponíveis no portal estejam expostas por meio de um API Gateway do tipo APISIX, os seguintes parâmetros adicionais estarão disponíveis para configuração de uma credencial JWT:

  • Private Key RSA: Chave privada (em formato PEM) usada para criar e assinar tokens usando algoritmos assimétricos como RS256, RS384, RS512, ES256, ES384, ES512. Obrigatório se escolhido algum algoritmo assimétrico.
  • Base64 Secret: Identifica se a secret usada para assinar o token JWT gerado pelo consumidor de API está codificada no formato base64.
  • Expiração: Tempo de expiração do token, em segundos. Após criado, o token é válido até atingir seu tempo de expiração.
  • Lifetime Grace: Define um período, em segundos, de margem de tolerância para validade de tokens, considerando a diferença de horário entre servidores de criação e validação do token JWT.