Axelor & SAML

Bonjour à tous

je suis en train de monter un POC , et un des points est l utilisation de SAML pour l authentification… j ai suivi a la lettre le chapitre https://docs.axelor.com/adk/5.4/dev-guide/modules/security.html#saml-2-0 de la doc.

quand je lance l authentification j ai une magnifique :

org.pac4j.saml.exceptions.SAMLException: Cannot find entity http://axelor:8080/axelor/callback?client_name=SAML2Client in metadata provider
org.pac4j.saml.context.SAML2ContextProvider.addContext(SAML2ContextProvider.java:125)
org.pac4j.saml.context.SAML2ContextProvider.addSPContext(SAML2ContextProvider.java:105)
org.pac4j.saml.context.SAML2ContextProvider.buildServiceProviderContext(SAML2ContextProvider.java:68)
org.pac4j.saml.context.SAML2ContextProvider.buildContext(SAML2ContextProvider.java:74)
org.pac4j.saml.redirect.SAML2RedirectActionBuilder.redirect(SAML2RedirectActionBuilder.java:37)
org.pac4j.core.client.IndirectClient.getRedirectAction(IndirectClient.java:109)
org.pac4j.core.client.IndirectClient.redirect(IndirectClient.java:79)
org.pac4j.core.engine.DefaultSecurityLogic.redirectToIdentityProvider(DefaultSecurityLogic.java:217)
org.pac4j.core.engine.DefaultSecurityLogic.perform(DefaultSecurityLogic.java:149)
io.buji.pac4j.filter.SecurityFilter.doFilter(SecurityFilter.java:84)
org.apache.shiro.guice.web.SimpleFilterChain.doFilter(SimpleFilterChain.java:41)
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387)
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
com.axelor.app.internal.AppFilter.doFilter(AppFilter.java:94)
com.google.inject.persist.PersistFilter.doFilter(PersistFilter.java:94)
com.axelor.db.tenants.AbstractTenantFilter.doFilter(AbstractTenantFilter.java:70)
com.axelor.web.servlet.CorsFilter.doFilter(CorsFilter.java:137)
com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:121)
com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133)

en cherchant bien, je me suis rendu compte que l information a l IDP & SP n était fournit dans la docs. J ai trouve la solution en démarrant Axelor sans ces fichiers, et Axelor génère ces fichier a partager avec l IDP et le SP. j inclus ces metadata et j ai toujours cette erreur java.
autre point, lorsque je lance l authentification sur l url d Axelor, je devrais voir du traffic cote IDP et SP, ce qui n est pas le cas… je n ai pas le moindre traffic réseau qui provient d Axelor.

là je donne ma langue au chat… quelqu’un a une idée ou chercher ?

Ctenot

no Axelor answer ?

axelor axelor in URL are valid?

yes … the URL are valid. looks like client_name must be in the metadata on the Axelor server…
i have also check if the file has been reader or not…

SAML 2.0

path to key-store

auth.saml.keystore.path = /opt/tomcat/conf/samlKeystore.jks

value of the -storepass option for the keystore

auth.saml.keystore.password = The_Password

value of the -keypass option

auth.saml.private.key.password = The_Password

path to IdP metadata

auth.saml.identity.provider.metadata.path = /opt/tomcat/conf/idp-metadata.xml

path to SP metadata

auth.saml.service.provider.metadata.path = /opt/tomcat/conf/sp-metadata.xml

Something missing ? any idea ?

Bonjour,

Avez-vous trouvé une solution à tout hasard ?

malheureusement non, et faut etre honnête le support d Axelor n a pas répondu en deux ans. je vous laisse juge de l implication du support

3 « J'aime »

Pas très encourageant tout ça… Merci pour la réponse rapide