Connexion via OpenId

Bonjour,

je tente depuis quelques temps maintenant de paramétrer la connexion via OpenID (IDP de son petit nom chez Renault) comme nous l’avons fait sur l’ensemble des instances chez nous.
A ma grande surprise, ça ne fonctionne pas et j’obtiens cette erreur sur la page du navigateur :

image

Dans le logs front on obtiens :

Et dans le log serveur :

30-Jun-2020 07:24:02.739 INFO [http-nio-8443-exec-7] org.apache.catalina.core.StandardWrapperValve.invoke 2020-06-30 07:24:02,736|SIMPLICITE|http://pch-api-6754fc65c6-ctcn6:8080||ERROR|system|com.simplicite.webapp.servlets.OAuth2Servlet|doGet||Event: [1]
com.simplicite.util.exceptions.ParamsException: Missing OAuth2 session state
at com.simplicite.webapp.servlets.OAuth2Servlet.callback(OAuth2Servlet.java:282)
at com.simplicite.webapp.servlets.OAuth2Servlet.doGet(OAuth2Servlet.java:857)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at com.simplicite.webapp.filters.RewriteFilter.doFilter(RewriteFilter.java:77)
at com.simplicite.webapp.filters.AbstractFilter.doFilter(AbstractFilter.java:37)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:188)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at com.simplicite.tomcat.valves.APISessionValve.invoke(APISessionValve.java:187)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:832)

Je précise que cette instance est dite en “intra” chez Renault (tout comme la BCSI de @bmo).

Savez-vous d’où peu provenir cette erreur?

Voici la conf mise en place sur l’instance :

Et le /health de l’instance en question :

[Platform]
Status=OK
Version=4.0.P24
BuiltOn=2020-04-24 22:35 (revision 3fe76ae912e69f249470c97013574fce47b7e1d2)
Encoding=UTF-8
EndpointIP=172.20.136.100
EndpointURL=http://pch-api-7fffc955f8-rrf2q:8080
TimeZone=UTC
SystemDate=2020-07-01 12:36:22

[Application]
ApplicationVersion=4.0
ContextPath=
ContextURL=https://pch-api.dev1.applis.renault.fr
ActiveSessions=2
TotalUsers=9
EnabledUsers=8
LastLoginDate=

[Server]
ServerInfo=Apache Tomcat/9.0.34
ServerType=WEB
User=root

[OS]
Name=Linux
Architecture=amd64
Version=4.14.138+
SystemEncoding=UTF-8

[Disk]
DiskFree=17382
DiskUsable=17366
DiskTotal=96551

[JavaVM]
Version=14
Vendor=N/A
VMName=OpenJDK 64-Bit Server VM
VMVersion=14+36
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.11 2019 05 30
HeapFree=115650
HeapSize=221852
HeapMaxSize=506816
TotalFreeSize=400614

[Cache]
GrantCache=15
GrantCacheMax=0
GrantCacheRatio=0
ObjectCache=208
ObjectCacheMax=10000
ObjectCacheRatio=2
ProcessCache=1
ProcessCacheMax=10000
ProcessCacheRatio=0

[Database]
Vendor=3
ProductName=PostgreSQL
ProductVersion=9.6.16
DriverName=PostgreSQL JDBC Driver
DriverVersion=42.2.12
DBDate=2020-07-01 12:36:22
DBDateOffset=0
DBPatchLevel=P24;3af266c5a82351b7c6a375ed69248ace327d08ed
UsingBLOBs=true

[Healthcheck]
Date=2020-07-01 12:36:23
ElapsedTime=736

Merci

Bonjour Thomas,
as-tu configuré le proxy permettant de “sortir” du réseau interne défini pour ton instance?
Dans la stack BCSI nous avons ajouté les paramètres suivants passés au process tomcat:
-Dhttps.proxyHost=${HTTPS_PROXY_HOST} -Dhttps.proxyPort=${HTTPS_PROXY_PORT} -Dhttp.proxyHost=${HTTPS_PROXY_HOST} -Dhttp.proxyPort=${HTTPS_PROXY_PORT}
Je t’ai envoyé par MP le paramétrage de l’environnement.

ps: les traces que tu désignes comme étant front/serveur ne semblent pas corrélées dans le temps.

Oui un HTTP timeout c’est sans aucun doute un pb de “tuyauterie”. Je ne vois pas de raison que ça ne marche pas une fois la tuyauterie bien configurée.