URLCallback avec JAAS sur ÉTAIT?
Question
Je tendis les JAA javax.security.auth.spi.LoginModule, et installé dans un serveur WAS. Ça marche; toutes les connexions passent par le code dans cette nouvelle classe, et si elle dit ne pas les laisser se connecter, ils sont empêchés de se connecter.
Le problème racine: Je ne veux pas aux connexions de filtre pour la console d'administration (/ ibm / console), mais je ne veux aux connexions de filtre pour d'autres choses sur le serveur. Je pense que la configuration disponible, le module de connexion s'applique à tout installé sur le serveur, y compris les écrans d'administration.
Je voudrais résoudre ce en obtenant l'URL de la page qui a déclenché l'appel à la LoginModule. Si j'utilisais WebLogic, j'utiliser un URLCallback pour obtenir l'URL. Est-ce que quelqu'un sait si Websphere Application Server a une fonctionnalité parallèle à cela, ou s'il y a une autre solution?
Comme l'information supplémentaire potentiellement utile, je ne peux pas appliquer JAAS à des applications individuelles sur le serveur; les descripteurs de déploiement sont grisés dans la console d'administration. Je ne peux appliquer de nouveaux modules JAR JAAS à l'ensemble du serveur, ce qui est un problème pour moi.
La solution
Weblogic il le fait avec weblogic.security.auth.callback.URLCallback, est-il le fait par WSServletRequestCallback.
callbacks[0] = new com.ibm.wsspi.security.auth.callback.WSServletRequestCallback(
"HttpServletRequest: ");
(callbacks de charge)
HttpServletRequest request = ((WSServletRequestCallback)callbacks[3]).getHttpServletRequest();
String contextPath = request.getContextPath();
Go à partir de là.