Class AzureAdWebAuthenticationPlugin
java.lang.Object
io.vertigo.vega.plugins.authentication.aad.AzureAdWebAuthenticationPlugin
- All Implemented Interfaces:
io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Plugin,WebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>
public class AzureAdWebAuthenticationPlugin
extends Object
implements WebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAuthenticationResult<com.microsoft.aad.msal4j.IAuthenticationResult>doHandleCallback(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Handle the callback request after login on the ssoio.vertigo.core.lang.Tuple<AuthenticationResult<com.microsoft.aad.msal4j.IAuthenticationResult>,jakarta.servlet.http.HttpServletRequest> doInterceptRequest(jakarta.servlet.http.HttpServletRequest httpRequest, jakarta.servlet.http.HttpServletResponse httpResponse) booleandoLogout(jakarta.servlet.http.HttpServletRequest httpRequest, jakarta.servlet.http.HttpServletResponse httpResponse) voiddoRedirectToSso(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Handle the redirect to the sso login pagestatic com.microsoft.aad.msal4j.IAuthenticationResultgetAuthSessionObject(jakarta.servlet.http.HttpServletRequest request) Returns the url for callbackReturn an optional external url of the application (if it is behind a firewall or a proxy)Returns the url for logoutgetRequestedUri(jakarta.servlet.http.HttpServletRequest httpRequest) Return the original request a user wanted before beeing redirected to the ssoUrl prefix of request directly handled by the pluginMap<String,BiFunction<jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse, io.vertigo.core.lang.Tuple<Boolean, jakarta.servlet.http.HttpServletRequest>>> Register additionnal handler for specific request necessary for the pluginUrl prefix of urls that are protected with this authentication plugin
-
Field Details
-
PRINCIPAL_SESSION_NAME
- See Also:
-
TOKEN_CACHE_SESSION_ATTRIBUTE
- See Also:
-
-
Constructor Details
-
AzureAdWebAuthenticationPlugin
-
-
Method Details
-
getUrlPrefix
Url prefix of urls that are protected with this authentication plugin- Specified by:
getUrlPrefixin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- the prefix
-
getUrlHandlerPrefix
Url prefix of request directly handled by the plugin- Specified by:
getUrlHandlerPrefixin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- the prefix
-
getCallbackUrl
Returns the url for callback- Specified by:
getCallbackUrlin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- url for callback
-
getLogoutUrl
Returns the url for logout- Specified by:
getLogoutUrlin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- url for logout
-
getExternalUrlOptional
Return an optional external url of the application (if it is behind a firewall or a proxy)- Specified by:
getExternalUrlOptionalin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- the external url of the app : as seen by the end user
-
doInterceptRequest
public io.vertigo.core.lang.Tuple<AuthenticationResult<com.microsoft.aad.msal4j.IAuthenticationResult>,jakarta.servlet.http.HttpServletRequest> doInterceptRequest(jakarta.servlet.http.HttpServletRequest httpRequest, jakarta.servlet.http.HttpServletResponse httpResponse) - Specified by:
doInterceptRequestin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>
-
doHandleCallback
public AuthenticationResult<com.microsoft.aad.msal4j.IAuthenticationResult> doHandleCallback(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:WebAuthenticationPluginHandle the callback request after login on the sso- Specified by:
doHandleCallbackin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Parameters:
request- the requestresponse- the response to consume- Returns:
- result of login challenge, providing info of the logged in user
-
doRedirectToSso
public void doRedirectToSso(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) Description copied from interface:WebAuthenticationPluginHandle the redirect to the sso login page- Specified by:
doRedirectToSsoin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Parameters:
request- the requestresponse- the response to consume
-
getAuthSessionObject
public static com.microsoft.aad.msal4j.IAuthenticationResult getAuthSessionObject(jakarta.servlet.http.HttpServletRequest request) -
getUrlHandlers
public Map<String,BiFunction<jakarta.servlet.http.HttpServletRequest, getUrlHandlers()jakarta.servlet.http.HttpServletResponse, io.vertigo.core.lang.Tuple<Boolean, jakarta.servlet.http.HttpServletRequest>>> Description copied from interface:WebAuthenticationPluginRegister additionnal handler for specific request necessary for the plugin- Specified by:
getUrlHandlersin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Returns:
- le map of specific handlers
-
getRequestedUri
Description copied from interface:WebAuthenticationPluginReturn the original request a user wanted before beeing redirected to the sso- Specified by:
getRequestedUriin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>- Parameters:
httpRequest- the request- Returns:
- the uri
-
doLogout
public boolean doLogout(jakarta.servlet.http.HttpServletRequest httpRequest, jakarta.servlet.http.HttpServletResponse httpResponse) - Specified by:
doLogoutin interfaceWebAuthenticationPlugin<com.microsoft.aad.msal4j.IAuthenticationResult>
-