Autenticação do OpenID Connect com o Microsoft Entra ID

OpenID Connect (OIDC) é um protocolo de autenticação baseado no protocolo OAuth2 (que é usado para autorização). O OIDC usa os fluxos de mensagens padronizados do OAuth2 para fornecer serviços de identidade.

O objetivo do design do OIDC é "tornar as coisas simples simples e as coisas complicadas possíveis". O OIDC permite que os desenvolvedores autentiquem seus usuários em sites e aplicativos sem ter que possuir e gerenciar arquivos de senha. Isso fornece ao criador de aplicativos uma maneira segura de verificar a identidade da pessoa que está usando o navegador ou o aplicativo nativo conectado ao aplicativo.

A autenticação do usuário deve ocorrer em um provedor de identidade onde a sessão ou as credenciais do usuário serão verificadas. Para fazer isso, você precisa de um agente confiável. Os aplicativos nativos geralmente iniciam o navegador do sistema para essa finalidade. As visualizações incorporadas são consideradas não confiáveis, pois não há nada que impeça o aplicativo de bisbilhotar a senha do usuário.

Além da autenticação, pode ser solicitado o consentimento do usuário. Consentimento é a permissão explícita do usuário para permitir que um aplicativo acesse recursos protegidos. O consentimento é diferente da autenticação porque o consentimento só precisa ser fornecido uma vez para um recurso. O consentimento permanece válido até que o usuário ou administrador revogue manualmente a concessão.

Utilizar quando

É necessário o consentimento do utilizador e o início de sessão na Web.

Architectural diagram

Componentes do sistema

  • Usuário: Solicita um serviço do aplicativo.

  • Agente confiável: o componente com o qual o usuário interage. Esse agente confiável geralmente é um navegador da Web.

  • Aplicativo: O aplicativo, ou Servidor de Recursos, é onde o recurso ou os dados residem. Ele confia no provedor de identidade para autenticar e autorizar com segurança o agente confiável.

  • Microsoft Entra ID: O provedor OIDC, também conhecido como provedor de identidade, gerencia com segurança qualquer coisa relacionada às informações do usuário, seu acesso e as relações de confiança entre as partes em um fluxo. Ele autentica a identidade do usuário, concede e revoga o acesso a recursos e emite tokens.

Implementar OIDC com o Microsoft Entra ID