Pergunta

Um usuário está acessando um aplicativo Web restrito com JAAS (no Glassfish 2.1). O LDAPREALM é usado e a autenticação é realizada com sucesso a partir do LDAP. Uma política de senha deve ser instalada para os usuários, para que sejam forçados a alterar senhas, ter senhas de certa complexidade/comprimento, falhas de senha e last N Senhas devem ser verificadas. A política de senha do servidor LDAP usada (Opends) suporta tudo isso, mas não é óbvio como receber esse tipo de informação no JAAS Form Form Login que estamos usando, para que as informações (ou seja, "Altere sua senha") podem ser exibido para o usuário.

Você tem alguma idéia de como implementar isso? Usando apenas o banco de dados não é uma opção, os usuários precisam estar no LDAP. O que não é óbvio é se deve usar as políticas de senha LDAP ou ter tudo programado em nosso aplicativo da Web. Gostaria de evitar isso e usar as políticas de senha nativa do LDAP.

Obrigado pelas respostas e melhores cumprimentos, Bozo

Foi útil?

Solução

Infelizmente, o que você pode fazer usando o JAAS é meio restrito a um pequeno conjunto de operações que qualquer sistema de login pode suportar. Embora o LDAP suporte uma política de senha, outros sistemas de login (por exemplo, Keystores) não podem, portanto, o JAAS não pode ter código que exija isso.

Portanto, você terá que conversar com o servidor LDAP diretamente usando JNDI ou possivelmente Esta biblioteca da Novell.

Outras dicas

Entendi. Tem que usar um SAM, pois você não pode receber o Loginexception (com o motivo da falha de login) nos mecanismos de autenticação existentes no Glassfish. A resposta está aqui: Como substituir j_security_check em glassfish?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top