OAuth e OpenID Connect SSO
Nota: SSO para aplicações está disponível apenas com o Endpoint MFA.
OAuth é um protocolo de autorização que permite acessos autenticados a recursos entre servidores e serviços sem compartilhar credenciais de login. OpenID Connect é uma camada de identidade sobre a estrutura do OAuth.
Os componentes básicos no funcionamento do OAuth e OpenID Connect são:
- Servidor: Este verificará as credenciais do usuário e fornecerá a chave para efetuar o login. No nosso caso, ADSelfService Plus atua como servidor.
- Aplicação cliente: Esta é a aplicação na qual o usuário está tentando fazer login.
- Usuário: Esta é a conta que está tentando fazer login na aplicação cliente.
OAuth 2.0
É assim que o OAuth habilita o SSO:
- Quando um usuário tenta fazer login em uma aplicação, ela envia uma solicitação de autorização para o ADSelfService Plus. O usuário é então redirecionado para a página de login do ADSelfService Plus, onde insere as credenciais de login.
- Após a verificação bem-sucedida, um código de autorização é enviado para a aplicação pelo ADSelfService Plus.
- A aplicação envia o código de autorização de volta para o ADSelfService Plus para receber o token de acesso e o token de atualização. O token de acesso atua como uma chave com tempo limitado para o usuário acessar os recursos protegidos da aplicação. O token de atualização é uma chave permanente que pode ser usada para solicitar um novo token de acesso após o antigo expirar.
- Agora, a aplicação envia uma solicitação de informações do usuário junto com o token de acesso como prova de identidade para o ADSelfService Plus. A resposta a essa solicitação retorna os detalhes do perfil do usuário necessários para completar o processo de login.
- Após a verificação bem-sucedida dos detalhes do usuário no lado da aplicação, o usuário é autenticado na aplicação.
OpenID Connect
OpenID Connect é semelhante ao OAuth SSO, mas aqui é usado um token de ID. O token de ID contém a assinatura do ADSelfService Plus e os detalhes do usuário. Existem dois cenários possíveis ao usar o OpenID Connect SSO.
- Login iniciado pela aplicação ou pelo provedor de serviço (SP): Esta tentativa de login é iniciada pela aplicação alvo.
- Login iniciado pelo ADSelfService Plus ou pelo provedor de identidade (IdP): Esta tentativa de login é iniciada pelo ADSelfService Plus.
Vamos entender o fluxo de trabalho em ambos os casos.
Login iniciado pela aplicação
- Um usuário tenta fazer login em uma aplicação. A aplicação envia uma solicitação de autorização para o ADSelfService Plus. O usuário é redirecionado para a página de login do ADSelfService Plus.
- O usuário insere suas credenciais de login aqui. Após a verificação bem-sucedida, um código de autorização é enviado para a aplicação pelo ADSelfService Plus.
- A aplicação envia o código de autorização de volta para o ADSelfService Plus para receber o token de ID. Este token contém os detalhes do usuário necessários para completar o processo de login.
- Após verificar a assinatura do ADSelfService Plus no token de ID, a aplicação recupera os detalhes do usuário do token de ID.
- Finalmente, após a verificação bem-sucedida dos detalhes do usuário no lado da aplicação, o usuário é autenticado na aplicação.
Login iniciado pelo ADSelfService Plus
- Um usuário faz login com sucesso no ADSelfService Plus, vai para a aba Applications e clica na aplicação desejada.
- Neste caso, o ADSelfService Plus envia um token de ID diretamente para a aplicação.
- Após verificar a assinatura do ADSelfService Plus no token de ID, a aplicação recupera os detalhes do usuário do token de ID.
- Após a verificação bem-sucedida dos detalhes do usuário no lado da aplicação, o usuário é autenticado na aplicação.
Escopos suportados
Escopos definem o nível de acesso que pode ser solicitado pelo provedor de serviço para acessar um recurso. Estes devem ser habilitados adequadamente pelo Admin. O ADSelfService Plus suporta os seguintes escopos:
- openid: Estabelece que esta é uma solicitação OpenID Connect. Este é um escopo obrigatório para a solicitação de autenticação OpenID Connect.
- profile: Solicita as reivindicações do perfil do usuário (FirstName e LastName).
- email: Solicita o atributo de e-mail do usuário.
- offline_access: Solicita o token de atualização que pode ser usado para receber novos tokens de acesso.
Aplicações suportadas
Não encontrou o que procura?
-
Visite nossa comunidade
Publique suas perguntas no fórum.
-
Solicite recursos adicionais
Envie-nos suas necessidades.
-
Precisa de assistência para implementação?
Experimente o OnboardPro