BirdID
  • Apresentação
  • Fluxo recomendado
    • Autenticação na API Pública
      • Descoberta
      • Autenticação (Password)
    • Autenticação no BirdID Pro
    • BirdID Pro - Assinatura Síncrona
  • Arquitetura da suíte de soluções
  • Nuvem Pública
    • Public API
      • Autenticação de usuários
        • OAuth2 - Authorization Code
        • OAuth2 - Password
        • QR Code e Push
      • Autenticação de aplicação
        • OAuth2 - Client Credentials
      • Uso de certificado
        • Assinatura digital
      • Auxiliares
        • Localização de usuário
        • Recuperação de certificado
      • Manutenção da aplicação
        • Cadastro de aplicação
        • Alteração de aplicação
        • Auto-cadastro de aplicação
  • BirdID Pro
    • Recursos
    • Arquitetura da plataforma
    • Instalação e configuração
    • API
      • Autenticação e Autorização
        • OAuth2 - Password
      • Preparação de documento(s)
      • Assinatura de documento(s)
      • Validação de integridade do documento
      • Monitor & HealthCheck
      • Informações do certificado
      • Integração S3
      • Integração GCP Storage
      • Integração FTP (File Transfer Protocol)
      • Licença
      • Juntar assinatura
    • Monitoramento
    • Dúvidas frequentes
    • Licença
  • CEAS
    • Arquitetura da plataforma
    • Recursos
    • API
      • Autenticação de usuários
        • OAuth2 - Authorization Code
        • OAuth2 - Password
      • Informações do certificado
      • Monitor & HealthCheck
    • Console
      • Auto registro da aplicação
    • Instalação e configuração
  • Middleware
    • Assistente Utilitário
      • Console
        • Aplicação
        • Usuários
        • Usuário selecionado
      • API
        • Aplicação
        • Usuários
        • Usuário selecionado
    • PKCS#11
    • CSP (Microsoft Crypto API)
    • Engine OpenSSL
    • JCA/JCE
  • Códigos de Retorno
  • Emissão Online
    • API
      • Autenticação / Login
      • Emissão
      • Dados da AR
  • Gateway ACT
    • Carimbo
    • Assinatura + Carimbo
    • Assinatura + Carimbo em Lote
  • Wings
    • Autenticação
      • Autenticação de Usuário
      • Definir Corporação
      • Credenciais de cliente externo
    • Corporativo
      • Consultar Usuários
      • Alterar Usuário
      • Cadastrar Assinante PJ
      • Alterar Usuário em Lote
    • Usuário Varejo
      • Alteração Tipo Usuário Varejo
      • Obter dados do Usuário
      • Consulta de crédito
Powered by GitBook
On this page
  • Autenticação simples
  • Autenticação com abertura de sessão
  • Autenticação com sessão já aberta
  • Autenticação especial
  • Revogar sessão

Was this helpful?

  1. BirdID Pro
  2. API

Autenticação e Autorização

PreviousAPINextOAuth2 - Password

Last updated 1 month ago

Was this helpful?

O padrão oAuth2 é utilizado para autenticação e autorização. Todas as requisições devem possuir um http header “Authorization” que deve conter os dados de autenticação;

Autenticação simples

A autenticação simples segue o padrão Basic Http Auth (), que basicamente é o envio do prefixo “Basic” concatenado com o schema encodado em base 64. O schema é definido por “username:otp”.

Request Ex:

Authorization

Basic <schema encodado em base64>

Existem quatro escopos OAuth que podem ser utilizados:

  • single_signature: Token que permite a assinatura de apenas um hash, sendo invalidado após a sua utilização.

  • multi_signature: Token que permite a assinatura de múltiplos hashes em uma única requisição, sendo invalidado após a sua utilização.

  • signature_session: Token de sessão OAuth que permite várias assinaturas em várias chamadas à API, desde que o token esteja dentro do prazo de validade ou que não tenha sido revogado pela aplicação ou pelo usuário.

  • authentication_session: Token de sessão OAuth para autenticação do titular, não permitindo a realização de assinaturas ou outras utilizações da chave privada

Autenticação com abertura de sessão

A autenticação com abertura de sessão envolve um parâmetro adicional para especificar se o access token será retornado ou não, no qual será o lifetime da sessão e se a sessão será automaticamente finalizada no fim da transação.

Caso seja enviado a flag “returnAccessToken” com o valor true, na resposta http do serviço será recebido o header “VCSchemaData”, que conterá o access token, o lifetime (da sessão) e o provider (id da nuvem configurado na variável de ambiente urlsMultiCloud).

Quando enviado o parâmetro lifetime, deve ser enviado o tempo da sessão em segundos (respeitando as regras do provedor de serviços de criptografia em uso). Caso não seja enviado, o CESS irá utilizar o lifetime padrão da instância/aplicação.

Caso seja enviado o parâmetro autoRevoke com o valor false, ele irá desativar a revogação automática da sessão no fim da transação (útil para reuso de uma autenticação por um período)

Request Ex:

Authorization

Basic <schema encodado em base64>

VCSchemaCfg

returnAccessToken=true;lifetime=999;autoRevoke=true

Response Ex:

VCSchemaData

accessToken;lifetime;provider

Autenticação com sessão já aberta

Request Ex:

Authorization

Bearer <token de acesso>

Autenticação especial

A autenticação especial deve ocorrer através do Vault Cloud Schema (Somente para provedores crypto pki indicados).

O Schema pode ser definido da seguinte forma:

  1. username:otp

  2. username:otp@ip

  3. username:otp@ip:port

  4. username|accesstoken

  5. username|accesstoken@ip

  6. username|accesstoken@ip:port

  7. provider-username:otp

  8. provider-username:otp@ip

  9. provider-username:otp@ip:port

  10. provider-username|accesstoken

  11. provider-username|accesstoken@ip

  12. provider-username|acesstoken@ip:port

Request Ex:

Authorization

VCSchema <schema encodado em base64>

Revogar sessão

O serviço funciona para assinaturas attached (conteúdo anexado na assinatura) e detached (conteúdo não anexado na assinatura).

POST http://cess.local/revoke

Headers

Name
Type
Description

Content-Type

string

application/json

Request Body

Name
Type
Description

token

string

Token de acesso recebido durante a abertura de sessão

{
    "revoked": true
}
https://tools.ietf.org/html/rfc7617