SSO sem cabeça do Drupal usando o protocolo OAuth
Visão geral
A solução de SSO headless baseada em OAuth da miniOrange conecta com eficiência o backend do Drupal a um servidor OAuth usando o protocolo OAuth para autenticação. Após a conclusão do processo de SSO, o módulo gera um JSON Web Token (JWT) para o usuário conectado e o transmite ao site frontend. (Opcional: este token pode ser usado para validar quaisquer outras APIs do Drupal.) Este guia destaca o ponto crucial de como o SSO headless é implementado no backend e no frontend.
Vamos começar pelo backend primeiro.Pré-requisitos
- Módulo de cliente miniOrange OAuth : Este módulo habilita o SSO entre o site Drupal e o provedor OAuth/OIDC.
- Módulo de Autenticação REST e JSON API :Após a execução do SSO, este módulo ajuda a gerar o JWT e enviar esse token para o aplicativo frontend. (Opcional: para autenticar quaisquer outras APIs do Drupal, passe o mesmo JWT no cabeçalho junto com a solicitação da API, e o módulo de autenticação da API REST e JSON validará esse JWT.)
Configurações de backend
- Módulo cliente miniOrange OAuth: Siga este guia de configuração para configurar a conexão entre o site Drupal e o provedor OAuth/OIDC desejado.
- Módulo de autenticação REST e JSON API:
- Para autenticar as APIs do Drupal usando o JWT, configure o Autenticação JWT método no módulo. Siga isto guia de configuração.
- Configure a URL de redirecionamento do aplicativo frontend:
- Navegue até a Configurações avançadas guia do módulo de autenticação REST & JSON API.
- De acordo com o relatório Configurações de endpoint de token para SSO sem interface Para obter detalhes, insira o endpoint do aplicativo frontend, para onde o navegador redirecionará após o processo de Login Único (SSO) com um parâmetro de código. Em seguida, clique em Salvar configuração de endpoint de token botão.
- Fluxo de login:
- Inicie o login a partir do aplicativo frontend do usuário. (usando URL- {drupal-base-url}/moLogin)
- O usuário é redirecionado para o servidor configurado.
- Insira as credenciais do usuário para autenticação.
- Após a autenticação bem-sucedida, o usuário é redirecionado de volta ao frontend com o código como parâmetro de consulta na URL.
- Use o código obtido na etapa anterior para fazer uma solicitação ao endpoint de token do Drupal. Para isso, siga os passos abaixo:
- Localize o ponto final do token no Configurações de endpoint de token para SSO sem interface detalhes. Consulte a imagem a seguir para isso.
- Exemplo para fazer uma solicitação POST com o código recebido:-
- Suponha que um usuário receba um código (received_code) no frontend.
- Agora, use o formato abaixo para fazer uma solicitação POST usando este código.
Descobrindo as cenas do frontend
Esta seção revela tudo o que um usuário precisa fazer no frontend.
Vamos começar:
HTTP: POST https://{drupal_base_url}/getToken code=(received_code)
Observação: Para ver o formato das solicitações de API que incluem o token JWT no cabeçalho, consulte isto guia de configuração.
Artigos Relacionados
Obrigado pela sua resposta. Entraremos em contato em breve.
Algo deu errado. Envie sua consulta novamente.

Entre em contato