Suche senden
Hochladen
Customiser le connecteur SAML de Liferay
•
0 gefällt mir
•
119 views
Q
Quang Tu LE
Folgen
Customiser le connecteur SAML de Liferay pour faire du SSO spécifique.
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 23
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
M1 presentation OSGi
M1 presentation OSGi
Velossity
LemonLDAP::NG et le support SAML2 (RMLL 2010)
LemonLDAP::NG et le support SAML2 (RMLL 2010)
Clément OUDOT
Sharepoint 2010 pour les administrateurs
Sharepoint 2010 pour les administrateurs
Mario Leblond
Restlet et le multi-plateforme
Restlet et le multi-plateforme
Jerome Louvel
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
AZUG FR
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Samir Arezki ☁
Ou sont mes beans, contrats et workflows ? WOA et REST: Un changement de ment...
Ou sont mes beans, contrats et workflows ? WOA et REST: Un changement de ment...
Jean-Laurent de Morlhon
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
Clément OUDOT
Empfohlen
M1 presentation OSGi
M1 presentation OSGi
Velossity
LemonLDAP::NG et le support SAML2 (RMLL 2010)
LemonLDAP::NG et le support SAML2 (RMLL 2010)
Clément OUDOT
Sharepoint 2010 pour les administrateurs
Sharepoint 2010 pour les administrateurs
Mario Leblond
Restlet et le multi-plateforme
Restlet et le multi-plateforme
Jerome Louvel
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
AZUG FR
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Samir Arezki ☁
Ou sont mes beans, contrats et workflows ? WOA et REST: Un changement de ment...
Ou sont mes beans, contrats et workflows ? WOA et REST: Un changement de ment...
Jean-Laurent de Morlhon
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
CAS, OpenID, Shibboleth, SAML : concepts, différences et exemples
Clément OUDOT
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
LINAGORA
Lagom, reactive framework(chtijug2016)
Lagom, reactive framework(chtijug2016)
Fabrice Sznajderman
Lagom, reactive framework
Lagom, reactive framework
Fabrice Sznajderman
Architecture de services web de type ressource
Architecture de services web de type ressource
Antoine Pouch
Nantes GTUG - Restlet & AppEngine
Nantes GTUG - Restlet & AppEngine
GDG Nantes
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Normandy JUG
Fédération des identités avec FederID
Fédération des identités avec FederID
LINAGORA
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
OW2
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
Catherine Nuel
CAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemples
Clément OUDOT
Presentation mug-mule studio
Presentation mug-mule studio
FastConnect
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de Jonas
Microsoft
Workshop Spring - Session 1 - L'offre Spring et les bases
Workshop Spring - Session 1 - L'offre Spring et les bases
Antoine Rey
2010 presentation ippon_corp
2010 presentation ippon_corp
Geoffray Gruel
Seminaire Portail Open Source
Seminaire Portail Open Source
Ippon
LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2
Clément OUDOT
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
Clément OUDOT
Innover sans contrainte, intégrer sans rupture
Innover sans contrainte, intégrer sans rupture
Guillaume Laforge
Sophia conf2013 cg
Sophia conf2013 cg
Pascal Flamand
#2 Architecture OSGi
#2 Architecture OSGi
Guillaume Sauthier
Weitere ähnliche Inhalte
Ähnlich wie Customiser le connecteur SAML de Liferay
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
LINAGORA
Lagom, reactive framework(chtijug2016)
Lagom, reactive framework(chtijug2016)
Fabrice Sznajderman
Lagom, reactive framework
Lagom, reactive framework
Fabrice Sznajderman
Architecture de services web de type ressource
Architecture de services web de type ressource
Antoine Pouch
Nantes GTUG - Restlet & AppEngine
Nantes GTUG - Restlet & AppEngine
GDG Nantes
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Normandy JUG
Fédération des identités avec FederID
Fédération des identités avec FederID
LINAGORA
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
OW2
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
Catherine Nuel
CAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemples
Clément OUDOT
Presentation mug-mule studio
Presentation mug-mule studio
FastConnect
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de Jonas
Microsoft
Workshop Spring - Session 1 - L'offre Spring et les bases
Workshop Spring - Session 1 - L'offre Spring et les bases
Antoine Rey
2010 presentation ippon_corp
2010 presentation ippon_corp
Geoffray Gruel
Seminaire Portail Open Source
Seminaire Portail Open Source
Ippon
LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2
Clément OUDOT
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
Clément OUDOT
Innover sans contrainte, intégrer sans rupture
Innover sans contrainte, intégrer sans rupture
Guillaume Laforge
Sophia conf2013 cg
Sophia conf2013 cg
Pascal Flamand
#2 Architecture OSGi
#2 Architecture OSGi
Guillaume Sauthier
Ähnlich wie Customiser le connecteur SAML de Liferay
(20)
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
Séminaire septembre 2010 - LinID et LinPKI, Les solutions Open Source d'ident...
Lagom, reactive framework(chtijug2016)
Lagom, reactive framework(chtijug2016)
Lagom, reactive framework
Lagom, reactive framework
Architecture de services web de type ressource
Architecture de services web de type ressource
Nantes GTUG - Restlet & AppEngine
Nantes GTUG - Restlet & AppEngine
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Soirée SOA - 2010-06-15 - Présentation de l'ESB Petals
Fédération des identités avec FederID
Fédération des identités avec FederID
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
Jonas5 Serveur Applications Solutions Linux Ow2
CAS, OpenID, SAML : concepts, différences et exemples
CAS, OpenID, SAML : concepts, différences et exemples
Presentation mug-mule studio
Presentation mug-mule studio
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de Jonas
Workshop Spring - Session 1 - L'offre Spring et les bases
Workshop Spring - Session 1 - L'offre Spring et les bases
2010 presentation ippon_corp
2010 presentation ippon_corp
Seminaire Portail Open Source
Seminaire Portail Open Source
LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
RMLL 2009 - Présentation du WebSSO LemonLDAP::NG
Innover sans contrainte, intégrer sans rupture
Innover sans contrainte, intégrer sans rupture
Sophia conf2013 cg
Sophia conf2013 cg
#2 Architecture OSGi
#2 Architecture OSGi
Customiser le connecteur SAML de Liferay
1.
Customiser le connecteur SAML de Liferay Quang Tu LE
2.
Quang Tu LE Consultant Technique indépendant • Java/Web depuis 2000 • Liferay depuis la version 4.2.2 (2006) @qtle
linkedin.com/in/quangtule
3.
Sommaire • Contexte • Besoin •
Solution • Mise en place
4.
Contexte • Portail intranet du Groupe – L’authentification LDAP • Application mobile – Oauth2 (Password Grant) – Code pin personnel, reconnaissance empreinte
5.
Besoin • se connecter de façon «Social Connect» via la fédération d'annuaire • fédération d'annuaire –
WebSSO – SAML – Proxy IDP
6.
Solution • Liferay Connector to SAML – https://web.liferay.com/marketplace/-/mp/ application/15188711 – Liferay est le Service Provider (SP) – Fédération d'annuaire est Identity Provider Federation (IDP Proxy) – Customiser le comportement du connecteur SAML
7.
Cinématique d’authentification SamlSpSsoFilter
8.
SamlSpSsoFilter • intercepte /c/portal/ login pour déclencher login SSO protected void doProcessFilter( HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws Exception { String requestPath = _samlHttpRequestUtil.getRequestPath(request); … else if (requestPath.equals("/c/portal/login")) { login(request, response); } else if (requestPath.equals("/c/portal/logout") && _singleLogoutProfile.isSingleLogoutSupported(request) ) {
9.
Solution • /c/portal/loginGardian
10.
SamlSpSsoFilter customisé • Customiser afin de intercepter /c/portal/loginGardian au lieu de /c/portal/login protected void doProcessFilter( HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws Exception { String requestPath = _samlHttpRequestUtil.getRequestPath(request); … else if (requestPath.equals("/c/portal/loginGardian")) { login(request, response); } else if (requestPath.equals("/c/portal/logout") && _singleLogoutProfile.isSingleLogoutSupported(request)) {
11.
SamlSpSsoFilter customisé v2 • Configurable via une configuration OSGI @Component( configurationPid = "com.edf.liferay.saml.runtime.configuration.VeolSSOConfiguration", configurationPolicy
= ConfigurationPolicy.OPTIONAL, immediate = true, property = { "after-filter=Virtual Host Filter", "dispatcher=FORWARD", "dispatcher=REQUEST", "init-param.url-regex-ignore-pattern=^/html/.+.(css|gif|html|ico|jpg|js| png)(?.*)?$", "servlet-context-name=", "servlet-filter-name=SSO SAML SP Filter", "url-pattern=/*" }, service = Filter.class ) public class SamlSpSsoFilter extends BaseSamlPortalFilter {
12.
Mise en place • faire un override partiel du fichier lpkg de Liferay • https://portal.liferay.dev/docs/7-0/tutorials/-/ knowledge_base/t/overriding-lpkg-files •
Reconstruire le jar com.liferay.saml.impl.jar présent dans le lpkg, • Le déposer dans osgi/marketplace/ override • et Liferay va le substituer au démarrage
13.
Comment reconstruire le jar? • Customiser les classes concernées • Customiser le composant OSGI (xml) •
Packager flat jar à partir du jar original – META-INF/MANIFEST.MF – OSGI-INF/.xml
14.
Mise en place Extrait depuis fichier
lpkg Customisés
15.
Build.gradle
16.
SamlSpSsoFilter.xml
17.
SamlSpSsoFilter.xml
18.
VeolSSOConfiguration.xml
19.
VeolSSOConfiguration.xml
20.
Conclusion • Surcharger 1 jar dans son package lpkg est possible! • Chacun peut faire à sa sauce J •
Avec modération.
21.
Merci! Question?
22.
SSO avec application mobile SP IDP /c/portal/oauth2/gardianidp veol://callback?tokenId=xxx webview 3.Authentifier 1.Demande une ressource 2.
AuthnRequest 4.Reponse 5.Redirect vers la ressource
23.
SSO avec application mobile OauthProvider GRANT_TYPE=IMPLICIT tokenId=xxx AccessToken RefreshToken
Jetzt herunterladen