|
From: alexis t. <ale...@gm...> - 2014-10-30 12:42:29
|
Les logs indiquent pourtant que le paramètre spring-security-redirect
est correcte maintenant
"http://vpc-eadmin-appli:80/esigate/private/engagements/". Mais il ne
semble pas pris en compte par votre application qui répond avec le
header "Location:http://vpc-eadmin-appli2:8081/engagements/" :
13:10:55 INFO esigate.extension.FragmentLogging: - engagements
http://vpc-eadmin-appli2:8081 - GET
http://vpc-eadmin-appli2:8081/engagements/j_spring_cas_security_check?ticket=ST-963-fCj3ebpNrNj9FAg0LBQQ-vpc-eadmin-appli&spring-security-redirect=http://vpc-eadmin-appli:80/esigate/private/engagements/;jsessionid=67D2FBF37635292024D30C79D4BDD3CE
HTTP/1.1 {accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8,user-agent:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/40.0.2203.3 Safari/537.36,accept-encoding: gzip,
deflate, sdch,accept-language:
fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4,X-Forwarded-For: 10.84.15.30,
10.83.199.94,x-forwarded-host: vpc-eadmin-appli,x-forwarded-server:
vpc-eadmin-appli,X-Forwarded-Proto: http} -> HTTP/1.1 302 Déplacé
Temporairement (306 ms) CACHE_MISS {Server:
Apache-Coyote/1.1,Location:
http://vpc-eadmin-appli2:8081/engagements/,Via: 1.1 localhost
(Apache-HttpClient/4.3.5 (cache))}
Il faudrait debugger l'application distante car elle ne semble pas
prendre en compte le paramètre spring-security-redirect.
Le 30 octobre 2014 13:13, William Dupuis <wil...@gm...> a écrit :
> Pas d'amélioration.
> Je suis toujours redirigé vers l'application.
>
> Le 30 octobre 2014 11:38, alexis thaveau <ale...@gm...> a écrit
> :
>
>> Bonjour,
>> Tu passes 2 fois dedans à cause de l'authentification CAS et de la
>> redirection. Je t’envois une correction, peux tu tester ?
>>
>> Le 29 octobre 2014 18:33, William Dupuis <wil...@gm...> a
>> écrit :
>> > La modification du cookie était un test, j'ai remis la valeur par
>> > défaut.
>> >
>> > Je passe bien dans la ligne 158.
>> > J'y passe même 2 fois.
>> > Voici la valeur des 3 paramètres :
>> >
>> > value :
>> >
>> > https://vpc-eadmin-appli/cas/login?service=http%3A%2F%2Fvpc-eadmin-appli2%3A8081%2Fengagements%2Fj_spring_cas_security_check
>> > uri :
>> >
>> > http://vpc-eadmin-appli2:8081/engagements/;jsessionid=D5ACA819E6ABB85F8C21070CD208C626
>> >
>> > originalUrihttp://vpc-eadmin-appli:80/esigate/private/engagements/;jsessionid=D5ACA819E6ABB85F8C21070CD208C626
>> >
>> >
>> > value : http://vpc-eadmin-appli2:8081/engagements/
>> > uri :
>> >
>> > http://vpc-eadmin-appli2:8081/engagements/j_spring_cas_security_check?ticket=ST-461-rj0Fv4oDSeZHttw05kDq-vpc-eadmin-appli&spring-security-redirect=http://vpc-eadmin-appli2:8081/engagements/;jsessionid=D5ACA819E6ABB85F8C21070CD208C626
>> > originalUri :
>> >
>> > http://vpc-eadmin-appli:80/esigate/private/engagements/;jsessionid=D5ACA819E6ABB85F8C21070CD208C626
>> >
>> >
>> >
>> > Le 29 octobre 2014 18:14, alexis thaveau <ale...@gm...> a
>> > écrit
>> > :
>> >
>> >> La c'est un autre cas. Le header "Location" est réécrit plus haut :
>> >> ligne 158 dans la méthode public void copyHeaders(HttpRequest
>> >> httpRequest, HttpEntityEnclosingRequest originalRequest,
>> >> HttpResponse httpClientResponse, HttpResponse output)
>> >>
>> >>
>> >> Mais je pense que tu vas aussi avoir des sourcis avec ESI_JSESSION_ID.
>> >> esigate gère uniquement le JSESSION_ID, et le supprime dans les URL
>> >> lorsqu'il est déjà posé en cookie.
>> >>
>> >>
>> >> Le 29 octobre 2014 17:57, William Dupuis <wil...@gm...> a
>> >> écrit :
>> >> > Je ne passe jamais dans cette ligne.
>> >> >
>> >> > Dans le "if" précédent, il ne trouve pas le "Referer" dans les
>> >> > paramétres du
>> >> > header.
>> >> > J'ai les headers suivants : host, accept, user-agent,
>> >> > accept-encoding,
>> >> > accept-language, cookie, x-forwarded-for, x-forwarded-host,
>> >> > x-forwarded-server et connection.
>> >> >
>> >> > Concernant les valeurs d'originalUri et uri les voici :
>> >> > originalUri :
>> >> >
>> >> >
>> >> > http://vpc-eadmin-sgac-appli:80/esigate/private/engagements/;ESI_JSESSIONID=CDBD080E065A31319874FC7E653CB29E
>> >> > uri :
>> >> >
>> >> >
>> >> > http://vpc-eadmin-sgac-appli2:8081/engagements/;ESI_JSESSIONID=CDBD080E065A31319874FC7E653CB29E
>> >> >
>> >> >
>> >> > Le 29 octobre 2014 15:43, alexis thaveau <ale...@gm...> a
>> >> > écrit
>> >> > :
>> >> >
>> >> >> On voit bien dans les logs une réponse de l'appli avec un Location:
>> >> >> http://vpc-eadmin-appli2:8081/engagements/
>> >> >> Esigate devrait récrire l'URL pour rester sur esigate.
>> >> >>
>> >> >> La réécriture est géré dans la classe HeaderManager.copyHeaders, le
>> >> >> plus simple va être de mettre un point d'arrêt sur cette ligne :
>> >> >> value = UriUtils.translateUrl(value, uri, originalUri);
>> >> >>
>> >> >> Et me donner les valeurs des 3 paramètres
>> >> >>
>> >> >> Le 29 octobre 2014 14:54, William Dupuis <wil...@gm...>
>> >> >> a
>> >> >> écrit :
>> >> >> > Le résultat est toujours le même.
>> >> >> > J'ai essayé en supprimant la directive "preserveHost=true" et cela
>> >> >> > est
>> >> >> > pareil.
>> >> >> >
>> >> >> > Le 29 octobre 2014 14:29, alexis thaveau
>> >> >> > <ale...@gm...> a
>> >> >> > écrit
>> >> >> > :
>> >> >> >
>> >> >> >> Bonjour,
>> >> >> >> Les logs ne donnent pas assez d'information, il faudrait ajouter
>> >> >> >> l'extension FragmentLogging qui permet de tracer les
>> >> >> >> requetes/reponses HTTP.
>> >> >> >> Par contre, j'ai peut etre une piste qui viendrait du
>> >> >> >> preserveHost
>> >> >> >> qui
>> >> >> >> est à true par défaut. Il faudrait tester avec :
>> >> >> >> engagements.preserveHost=false
>> >> >> >>
>> >> >> >> L'application distante doit faire une redirection et esigate ne
>> >> >> >> reconstruit par l'url correctement pour pointer vers esigate
>> >> >> >>
>> >> >> >> Le 29 octobre 2014 11:46, William Dupuis
>> >> >> >> <wil...@gm...>
>> >> >> >> a
>> >> >> >> écrit :
>> >> >> >> > Sans l'extension ServletExtension, le comportement est le même.
>> >> >> >> > J'ai également supprimé le provider pour "bonita".
>> >> >> >> > Voici les logs générés.
>> >> >> >> >
>> >> >> >> > Merci beaucoup pour le temps passer sur mon problème.
>> >> >> >> >
>> >> >> >> > Le 29 octobre 2014 11:11, alexis thaveau
>> >> >> >> > <ale...@gm...> a
>> >> >> >> > écrit
>> >> >> >> > :
>> >> >> >> >
>> >> >> >> >> Bonjour,
>> >> >> >> >>
>> >> >> >> >> Est-ce que vous pouvez tester sans l'extension
>> >> >> >> >> ServletExtension ?
>> >> >> >> >>
>> >> >> >> >> Le 29 octobre 2014 09:19, William Dupuis
>> >> >> >> >> <wil...@gm...>
>> >> >> >> >> a
>> >> >> >> >> écrit :
>> >> >> >> >> > Bonjour,
>> >> >> >> >> > Voici les différents éléments demandés.
>> >> >> >> >> >
>> >> >> >> >> > Pour gérer ces logs, j'ai testé de me connecter à l'URL :
>> >> >> >> >> > http://vpc-eadmin-appli/esigate/private/engagements/
>> >> >> >> >> > Après m'être authentifié dans le CAS, j'ai été redirigé vers
>> >> >> >> >> > l'URL
>> >> >> >> >> > :
>> >> >> >> >> > http://vpc-eadmin-appli2:8081/engagements/
>> >> >> >> >> >
>> >> >> >> >> > Merci pour votre aide.
>> >> >> >> >> > William
>> >> >> >> >> >
>> >> >> >> >> > Le 28 octobre 2014 18:24, alexis thaveau
>> >> >> >> >> > <ale...@gm...> a
>> >> >> >> >> > écrit
>> >> >> >> >> > :
>> >> >> >> >> >
>> >> >> >> >> >> Bonsoir,
>> >> >> >> >> >>
>> >> >> >> >> >> Est-ce que vous pouvez fournir la configuration esigate
>> >> >> >> >> >> (esigate.properties + web.xml) ? Pouvez vous aussi fournir
>> >> >> >> >> >> le
>> >> >> >> >> >> fichier
>> >> >> >> >> >> de log (avec un niveau debug sur esigate ) ?
>> >> >> >> >> >>
>> >> >> >> >> >> Merci
>> >> >> >> >> >>
>> >> >> >> >> >> Le 28 octobre 2014 17:01, William Dupuis
>> >> >> >> >> >> <wil...@gm...>
>> >> >> >> >> >> a
>> >> >> >> >> >> écrit :
>> >> >> >> >> >> > Bonjour,
>> >> >> >> >> >> >
>> >> >> >> >> >> > Je vous contacte car j'ai un problème de redirection
>> >> >> >> >> >> > après
>> >> >> >> >> >> > une
>> >> >> >> >> >> > authentification ProxyCAS dans ESIGate.
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > Détail de mon problème :
>> >> >> >> >> >> >
>> >> >> >> >> >> > J'ai installé un serveur ESIGate 5.0 en frontal de mes
>> >> >> >> >> >> > applications.
>> >> >> >> >> >> > Ce
>> >> >> >> >> >> > serveur est cassifié et est utilisé comme ProxyCAS.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Lorsque je teste le ProxyCAS sur les webapps de demo
>> >> >> >> >> >> > (esigate-app-casified-aggregated1 et
>> >> >> >> >> >> > esigate-app-casified-aggregated2),
>> >> >> >> >> >> > cela
>> >> >> >> >> >> > fonctionne bien.
>> >> >> >> >> >> > Mes 2 webapps sont déployées dans le même Tomcat
>> >> >> >> >> >> > qu'ESIGate.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Par contre, lorsque j'essaye d'inclure des applications
>> >> >> >> >> >> > tierces,
>> >> >> >> >> >> > je
>> >> >> >> >> >> > me
>> >> >> >> >> >> > retrouve redirigé vers les applications tierces une fois
>> >> >> >> >> >> > connecté.
>> >> >> >> >> >> > Pourtant en regardant les logs, l'authentification via
>> >> >> >> >> >> > ProxyCAS
>> >> >> >> >> >> > dans
>> >> >> >> >> >> > mes
>> >> >> >> >> >> > applications tierces a bien fonctionné.
>> >> >> >> >> >> >
>> >> >> >> >> >> > Configuration du provider :
>> >> >> >> >> >> >
>> >> >> >> >> >> > appli.remoteUrlBase=http://adresse-locale:8080/appli/
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > appli.extensions=org.esigate.servlet.ServletExtension,org.esigate.extension.Esi,org.esigate.cas.CasAuthenticationHandler
>> >> >> >> >> >> > appli.mappings=/private/appli/*
>> >> >> >> >> >> >
>> >> >> >> >> >> > Scénario :
>> >> >> >> >> >> >
>> >> >> >> >> >> > J'accède à mon adresse ESIGate sécurisée :
>> >> >> >> >> >> > http://adresse-esigate/esigate/private/appli/
>> >> >> >> >> >> >
>> >> >> >> >> >> > Je suis redirigé vers mon CAS :
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > https://adresse-cas/cas/login?service=http%3A%2F%2Fadresse-esigate%2Fesigate%2Fprivate%2Fappli%2F
>> >> >> >> >> >> >
>> >> >> >> >> >> > Une fois authentifié dans CAS, je suis bien redirigé vers
>> >> >> >> >> >> > http://adresse-esigate/esigate/private/appli/, puis je
>> >> >> >> >> >> > suis
>> >> >> >> >> >> > directement
>> >> >> >> >> >> > redirigé avec une HTTP 302 vers mon adresse locale
>> >> >> >> >> >> > http://adresse-locale:8080/appli/
>> >> >> >> >> >> >
>> >> >> >> >> >> > Si je re-accède à mon URL ESIGate
>> >> >> >> >> >> > (http://adresse-esigate/esigate/private/appli), cela
>> >> >> >> >> >> > fonctionne
>> >> >> >> >> >> > bien,
>> >> >> >> >> >> > je
>> >> >> >> >> >> > suis authentifié.
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > Quelqu'un a-t-il déjà rencontré ce problème ?
>> >> >> >> >> >> > Je n'arrive pas à déterminer si mon problème vient de ma
>> >> >> >> >> >> > configuration
>> >> >> >> >> >> > ESIGate ou de mes applications tierces.
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > Merci d'avance pour votre retour.
>> >> >> >> >> >> > Cordialement,
>> >> >> >> >> >> > William Dupuis
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > ------------------------------------------------------------------------------
>> >> >> >> >> >> >
>> >> >> >> >> >> > _______________________________________________
>> >> >> >> >> >> > Webassembletool-users mailing list
>> >> >> >> >> >> > Web...@li...
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> >
>> >> >> >> >> >> > https://lists.sourceforge.net/lists/listinfo/webassembletool-users
>> >> >> >> >> >> >
>> >> >> >> >> >
>> >> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >
>> >> >> >
>> >> >
>> >> >
>> >
>> >
>
>
|