Class SAML2WebAuthenticationPlugin
- java.lang.Object
-
- io.vertigo.vega.plugins.authentication.saml2.SAML2WebAuthenticationPlugin
-
- All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Plugin,WebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>
public class SAML2WebAuthenticationPlugin extends Object implements WebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>
Base authentication handler for SAML2.- Author:
- skerdudou
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AuthenticationResult<org.opensaml.saml.saml2.core.Assertion>doHandleCallback(javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse httpResponse)Handle the callback request after login on the ssobooleandoLogout(javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse httpResponse)voiddoRedirectToSso(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)Handle the redirect to the sso login pageStringgetCallbackUrl()Returns the url for callbackOptional<String>getExternalUrlOptional()Return an optional external url of the application (if it is behind a firewall or a proxy)StringgetLogoutUrl()Returns the url for logoutOptional<String>getRequestedUri(javax.servlet.http.HttpServletRequest httpRequest)Return the original request a user wanted before beeing redirected to the ssoStringgetUrlHandlerPrefix()Url prefix of request directly handled by the pluginMap<String,BiFunction<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,io.vertigo.core.lang.Tuple<Boolean,javax.servlet.http.HttpServletRequest>>>getUrlHandlers()Register additionnal handler for specific request necessary for the pluginStringgetUrlPrefix()Url prefix of urls that are protected with this authentication plugin-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.vertigo.vega.impl.authentication.WebAuthenticationPlugin
doInterceptRequest
-
-
-
-
Method Detail
-
getUrlPrefix
public String getUrlPrefix()
Url prefix of urls that are protected with this authentication plugin- Specified by:
getUrlPrefixin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- the prefix
-
getUrlHandlerPrefix
public String getUrlHandlerPrefix()
Url prefix of request directly handled by the plugin- Specified by:
getUrlHandlerPrefixin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- the prefix
-
getUrlHandlers
public Map<String,BiFunction<javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,io.vertigo.core.lang.Tuple<Boolean,javax.servlet.http.HttpServletRequest>>> getUrlHandlers()
Register additionnal handler for specific request necessary for the plugin- Specified by:
getUrlHandlersin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- le map of specific handlers
-
getCallbackUrl
public String getCallbackUrl()
Returns the url for callback- Specified by:
getCallbackUrlin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- url for callback
-
getLogoutUrl
public String getLogoutUrl()
Returns the url for logout- Specified by:
getLogoutUrlin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- url for logout
-
getExternalUrlOptional
public Optional<String> getExternalUrlOptional()
Return an optional external url of the application (if it is behind a firewall or a proxy)- Specified by:
getExternalUrlOptionalin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Returns:
- the external url of the app : as seen by the end user
-
doRedirectToSso
public void doRedirectToSso(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)Handle the redirect to the sso login page- Specified by:
doRedirectToSsoin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Parameters:
request- the requestresponse- the response to consume
-
doLogout
public boolean doLogout(javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse httpResponse)- Specified by:
doLogoutin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>
-
getRequestedUri
public Optional<String> getRequestedUri(javax.servlet.http.HttpServletRequest httpRequest)
Return the original request a user wanted before beeing redirected to the sso- Specified by:
getRequestedUriin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Parameters:
httpRequest- the request- Returns:
- the uri
-
doHandleCallback
public AuthenticationResult<org.opensaml.saml.saml2.core.Assertion> doHandleCallback(javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse httpResponse)
Description copied from interface:WebAuthenticationPluginHandle the callback request after login on the sso- Specified by:
doHandleCallbackin interfaceWebAuthenticationPlugin<org.opensaml.saml.saml2.core.Assertion>- Parameters:
httpRequest- the requesthttpResponse- the response to consume- Returns:
- result of login challenge, providing info of the logged in user
-
-