Bonjour,
Dans le cadre du développement d'un service web, nous devons intégrer une applet qui communique avec une webapp (tomcat) via un apache. La difficulté intervient lorsque nous rajoutons une couche d'authentification basée sur kerberos.
Le browser est un firefox tournant sur un GNU/Linux. Pour firefox, aucun soucis à faire du HTTP+kerberos : quand il veut une page, il se débrouille avec apache et transmet tout comme il faut.
La dificulté intervient au moment où firefox interprète la page HTML contenant l'applet. A ce moment, il active la machine virtuelle. Celle-ci démarre, mais n'arrive pas à charger l'applet. Et pour cause, le .jar de l'applet est sur une partie du site soumise à authentification kerberos. Or, visiblement, la machine virtuelle ne sait pas utiliser les informations locales (ticket cache) pour s'authentifier auprès d'apache. Le résultat est sans appel : Error 401.
J'ai écumé le web sans réussir à comprendre ce que je dois configurer pour parvenir à ce que la jvm utilise les informations d'authentification locales. Je me perds dans le JAAS, LoginContext, java.security.auth.login.config, et autres.
Avez-vous une solution ?
De plus, une fois que la jvm saura charger l'applet, il va falloir que les communications de l'applet (requêtes HTTP) soient elles-aussi authentifiées.
Je précise qu'il s'agit surtout d'intégrer du code existant. Autant que possible, j'aimerai éviter toutes solutions consistant à modifier le code de l'applet (http://kaboum.sourceforge.net/).
Enfin, je précise que j'aimerai faire fonctionner cela avec une jvm 1.5 (mais une migration jvm 1.6 peut être envisagée).
Merci mille fois d'avance pour toutes vos informations.
PS : désolé, je débute avec toutes ces notions. Merci de bien vouloir m'excuser par avance si ma question est ridicule.
Partager