2009-07-23 5 views
2

J'ai écrit un module de connexion personnalisé pour JBoss qui authentifie/autorise les demandes à un service Web. Le premier appel au service s'authentifie bien. Je peux connecter un débogueur au module de connexion et suivre l'exécution du code. Cependant, tous les appels suivants au service Web ignorent complètement le module de connexion. Il semble que JBoss/jaas réutilise les résultats de la première connexion.Le module de connexion personnalisée JBoss ne fonctionne qu'une seule fois

Je suis bloqué. Des suggestions pour me faire passer la bosse?

Répondre

0

L'authentification/autorisation est-elle associée à un objet de session? Comment avez-vous défini le délai d'attente/invalidation de la session? JBOSS cache probablement les informations d'identification d'une manière ou d'une autre. Vous voulez pour ignorer le module de connexion dans ce cas. Vous ne devez l'invalider que si vous vous déconnectez ou expirez. Avez-vous testé avec deux utilisateurs/navigateurs distincts, chacun avec sa propre session?

+0

J'ai la même idée, JBoss cache quelque chose. Comme il s'agit d'un module de sécurité personnalisé pour un service Web sans état, je préférerais mettre en cache les informations d'identification moi-même. Je voudrais désactiver la mise en cache de JBoss et faire exécuter le module de connexion à chaque fois. – IdahoX

1

Je l'ai compris. J'essayais de configurer l'authentification basée sur les cookies. Apparemment, JBoss/Jaas met en cache des authentifications réussies basées sur le nom d'utilisateur et le mot de passe et les cookies sont ignorés. Pour que cela fonctionne, j'ai supprimé le cookie de la demande de service Web et l'ai remplacé par un nom d'utilisateur et un mot de passe dans l'en-tête d'authentification.

Questions connexes