Integração

Introdução

Esta página descreve como fazer um integração básica com o Login Cidadao, um gerenciador de identidades que utiliza o protocolo OAuth 2.

Caso queira mais informações sobre OAuth 2, por favor, leia a página do OAuth 2 e também este post de Aaron Parecki .

O protocolo OAuth 2 é complexo, por isso, a menos que você conheça profundamente tanto a RFC-6749 quanto as melhores práticas em segurança, utilize alguma biblioteca implementada e mantida por alguém que conheça.

Antes de Começar

Informações Básicas

São informações básicas e fundamentais para o funcionamento dos exemplos e do processo de autenticação:

  • URLs do Login Cidadão
  • URL de Autorização. Exemplo: https://meu.rs.gov.br/oauth/v2/auth
  • URL para solicitação de Access Token. Exemplo: https://meu.rs.gov.br/oauth/v2/token
  • URL com os dados do usuário autenticado. Exemplo: https://meu.rs.gov.br/api/v1/person.json
  • O conjunto de escopos que serão acessados
  • Chave pública do Client OAuth
  • Chave privada (ou Secret) do Client OAuth
  • Precisamos especificar as URLs de Retorno que o gerenciador de identidades esta autorizado a retornar dados.

Tanto as URLs do Login Cidadão quanto as chaves de acesso devem ser obtidas na instalação do Login Cidadão na qual você deseja autenticar-se enquanto as URLs de Retorno dependem do seu Client OAuth.

Escopos

Você pode solicitar quantos e quais escopos desejar, entretanto esteja ciente de que quanto mais informações você solicitar ao usuário menor será a probabilidade do mesmo lhe autorizar a recebê-las, portanto solicite apenas o absolutamente necessário.

A lista dos escopos suportados pode ser encontrada aqui .

Exemplos

No nosso branch exemplos demonstramos a integração utilizando Java, PHP 5.2 e PHP 5.3. Em todos os exemplos é necessário ter as Informações Básicas .

Para continuar escolha um dos seguintes exemplos para explicarmos como utilizar a autenticação: