Pular para o conteúdo principal

🔑 Autenticação e Credenciais de Acesso

📝 Dados de Exemplo na Documentação

IMPORTANTE: Todos os dados apresentados nesta documentação (Client IDs, Client Secrets, tokens, credenciais, etc.) são fictícios e apenas para fins ilustrativos.

NÃO utilize estes dados em suas integrações reais
SEMPRE use as credenciais que você receber por e-mail após aprovação da sua solicitação

Valores como SEU_CLIENT_ID, SEU_CLIENT_SECRET, SEU_TOKEN, etc. devem ser substituídos pelas suas credenciais reais.

🚫 ATENÇÃO: TOKEN É OBRIGATÓRIO

TODAS as requisições às APIs da Credsystem requerem um token de acesso válido.

Sem um token válido no header Authorization, você receberá erro e NÃO conseguirá acessar nenhum endpoint.

Fluxo obrigatório:

  1. ✅ Obter credenciais (Client ID e Secret)
  2. ✅ Gerar token de acesso via OAuth2
  3. ✅ Incluir token no header de TODAS as requisições: Authorization: Bearer SEU_TOKEN
  4. ✅ Renovar token quando expirar

📖 Visão Geral

Para utilizar as APIs da Credsystem é necessário se autenticar usando o token de acesso obtido através do sistema de autenticação OAuth2.

O sistema de autenticação OAuth2 da Credsystem suporta a interação server-to-server entre uma aplicação web e os serviços da Credsystem. Para este cenário, você precisa de uma conta de serviço, que é uma conta impessoal que pertence à sua aplicação e não a um usuário individual. Administradores poderão solicitar que uma conta de serviço possa ter autorização para acessar dados de uma conta de usuário.

Para mais detalhes de como uma aplicação pode completar o processo de autenticação OAuth2 server-to-server através do protocolo HTTP, consulte este guia de Autenticação.

🎯 Processo em 4 Passos


🌐 URLs Base

🔴 Red Hat SSO (Keycloak)

AmbienteURL Base
Homologaçãohttps://ssohml.credsystem.com.br/auth/realms/{realm}/protocol/openid-connect
Produçãohttps://ssoprd.credsystem.com.br/auth/realms/{realm}/protocol/openid-connect

Substitua {realm} pelo realm fornecido nas suas credenciais.

🔵 Oracle IDCS

AmbienteURL Base
Produçãohttps://idcs-0fe1bec59571471484a8896c1a0d7a62.identity.oraclecloud.com/oauth2/v1

📚 Guia Passo a Passo

Esta documentação foi dividida em partes menores para facilitar a leitura. Siga a ordem abaixo:

📋 Passo 1: Solicitar Credenciais

O que você vai aprender:

  • ✅ Como solicitar credenciais pelo Portal do Desenvolvedor
  • ✅ Quais e-mails você receberá
  • ✅ Checklist de recebimento
  • ✅ O que fazer se não receber

Tempo de leitura: ~5 minutos


🔧 Passo 2: Entender os Sistemas de Autenticação

O que você vai aprender:

  • ✅ Diferença entre Red Hat SSO (Keycloak) e Oracle IDCS
  • Qual sistema cada API utiliza (tabela de referência rápida)
  • ✅ Quando usar Client Credentials, Password Grant ou Refresh Token
  • ✅ Campos retornados em cada resposta de autenticação

Tempo de leitura: ~7 minutos


📝 Passo 3: Exemplos Práticos de Autenticação

O que você vai aprender:

  • ✅ Exemplos completos em 7 linguagens (cURL, JavaScript, Python, Java, C#, PHP, Go)
  • ✅ Red Hat SSO - Client Credentials
  • ✅ Red Hat SSO - Password Grant
  • ✅ Red Hat SSO - Refresh Token
  • ✅ Oracle IDCS - Client Credentials

Tempo de leitura: ~15 minutos


🎯 Passo 4: Usando o Token nas Requisições

O que você vai aprender:

  • ✅ Classe completa de autenticação com cache automático
  • ✅ Gerenciamento de renovação de token
  • ✅ Tratamento de erro 401 com retry
  • ✅ Exemplo completo em 3 linguagens principais

Tempo de leitura: ~10 minutos


🔒 Segurança e Boas Práticas

O que você vai aprender:

  • ✅ Checklist completo de segurança
  • ✅ Arquitetura recomendada (backend/frontend)
  • ✅ Como armazenar credenciais de forma segura
  • ✅ O que NUNCA fazer com tokens e credenciais
  • ✅ Fluxo de autenticação correto

Tempo de leitura: ~8 minutos


Troubleshooting e FAQ

O que você vai encontrar:

  • ✅ Soluções para erros comuns (401, 400, 403, 429)
  • ✅ Perguntas frequentes
  • ✅ Testes rápidos para validar credenciais
  • ✅ Como entrar em contato com suporte

Tempo de leitura: ~10 minutos


💬 Precisa de Ajuda?


Bom desenvolvimento! 🚀