Procurar Resultados :

×

Registrar Contato

Aplicações Drupal modernas frequentemente dependem de provedores de identidade OAuth 2.0 para autenticação centralizada. Embora essa abordagem fortaleça a autenticação, ela pode deixar uma lacuna na forma como as sessões de usuário são gerenciadas dentro do próprio Drupal.

A autenticação pode ser delegada ao provedor de identidade, mas a aplicação da sessão permanece dentro do Drupal, criando uma separação entre a validade do token e a duração da sessão.

A solução introduz um certo nível de personalização que opera nativamente dentro do Drupal. O resultado é um controle de acesso consistente, menor exposição à segurança e um comportamento de sessão que reflete com precisão as políticas de autorização do OAuth.

Nesta seção, discutiremos tudo, desde os requisitos e o processo de implementação até os resultados.

logotipo do cartão de caso de uso

Módulo de cliente OAuth

Baixar módulo

Quando um site Drupal usa OAuth para autenticação, espera-se que as decisões de acesso sigam a validade do token OAuth. Em teoria, assim que o token expira, o acesso deveria ser encerrado imediatamente. Na prática, isso nem sempre acontece.

As sessões do Drupal frequentemente continuam mesmo após o token OAuth associado expirar. Como o gerenciamento de sessão e a validação de token operam separadamente, não existe um mecanismo integrado para encerrar automaticamente uma sessão ativa do Drupal quando o token se torna inválido.

  • Essa desconexão cria uma lacuna grave no controle de acesso. Os usuários podem manter o acesso além do período de autorização previsto. Tokens expirados não acionam o encerramento da sessão de forma confiável. Não há um ponto de aplicação centralizado para garantir que a duração da sessão corresponda exatamente à duração do token.
  • Com isso, como administrador, você pode:
    • Sincronize o tempo de vida da sessão do Drupal com a expiração do token OAuth.
    • Selecione o parâmetro de expiração de token exato do Provedor de Identidade que você deseja usar.
    • Defina exatamente o que acontece no Drupal quando o token expira.
  • Com essa configuração, o Drupal deixa de lidar com autenticação e gerenciamento de sessão separadamente; eles funcionam juntos, como deveriam.

Ao fazer login, o provedor de identidade OAuth fornece um token de acesso com seu próprio tempo de expiração. O módulo extrai esse valor de expiração do token e o utiliza para definir a duração da sua sessão do Drupal.

  • Depois de ativar a sincronização, eis o que acontece:
    • O Drupal relaciona a duração da sua sessão com a validade do token OAuth.
    • O sistema verifica continuamente se o token ainda é válido enquanto você está conectado.
    • Assim que o token expira, o Drupal executa a ação que você definiu.
  • Como administrador, você tem algumas opções:
    • Você pode optar por expulsar os usuários assim que o token expirar.
    • Ou você pode tentar automatizar o processo e fazer com que o Drupal tente renovar o token com um token de atualização. Aviso: isso depende do seu provedor de identidade.
  • Tudo isso funciona de forma autônoma; não há necessidade de código extra ou agendadores externos. O Drupal simplesmente cuida de tudo.
  • Sincronização entre a validade do token OAuth e as sessões do Drupal.
  • Eliminação de sessões de usuário obsoletas ou não gerenciadas.
  • Melhoria na consistência do controle de acesso.
  • Redução do risco de segurança associado a tokens expirados.

O gerenciamento de sessões com sincronização de expiração de tokens permite que o Drupal aplique o controle de acesso — especificamente a revogação de acesso — com base na validade do token OAuth. O objetivo principal do token OAuth é fornecer um recurso que permita o acesso a algo. É lógico que, uma vez expirado o token, o acesso também seja revogado.

Entraremos em contato com você o mais breve possível

forma mo

 Obrigado pela sua resposta. Entraremos em contato em breve.

Algo deu errado. Envie sua consulta novamente.

Conteúdo

Olá!

Preciso de ajuda? Estamos bem aqui!

ajuda