Package org.pac4j.play.deadbolt2
Class Pac4jHandler
- java.lang.Object
-
- org.pac4j.core.profile.factory.ProfileManagerFactoryAware<C>
-
- org.pac4j.core.engine.AbstractExceptionAwareLogic<R,C>
-
- org.pac4j.core.engine.DefaultSecurityLogic<play.mvc.Result,PlayWebContext>
-
- org.pac4j.play.deadbolt2.Pac4jHandler
-
- All Implemented Interfaces:
be.objectify.deadbolt.java.DeadboltHandler
,org.pac4j.core.engine.SecurityLogic<play.mvc.Result,PlayWebContext>
public class Pac4jHandler extends org.pac4j.core.engine.DefaultSecurityLogic<play.mvc.Result,PlayWebContext> implements be.objectify.deadbolt.java.DeadboltHandler
This is the deadbolt handler for pac4j: the deadbolt subject is built from the pac4j user profile. If no pac4j profile exists, the user is redirected to the identity provider for login for indirect clients; otherwise, a 401 error is returned. If the subject is not allowed, a 403 error is returned.- Since:
- 2.6.0
- Author:
- Jerome Leleu
-
-
Constructor Summary
Constructors Constructor Description Pac4jHandler(org.pac4j.core.config.Config config, play.libs.concurrent.HttpExecutionContext httpExecutionContext, String clients, PlaySessionStore playSessionStore, Pac4jRoleHandler rolePermissionsHandler)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletionStage<Optional<play.mvc.Result>>
beforeAuthCheck(play.mvc.Http.RequestHeader requestHeader, Optional<String> content)
CompletionStage<Optional<be.objectify.deadbolt.java.DynamicResourceHandler>>
getDynamicResourceHandler(play.mvc.Http.RequestHeader requestHeader)
long
getId()
CompletionStage<List<? extends be.objectify.deadbolt.java.models.Permission>>
getPermissionsForRole(String roleName)
CompletionStage<Optional<? extends be.objectify.deadbolt.java.models.Subject>>
getSubject(play.mvc.Http.RequestHeader requestHeader)
CompletionStage<play.mvc.Result>
onAuthFailure(play.mvc.Http.RequestHeader requestHeader, Optional<String> content)
-
Methods inherited from class org.pac4j.core.engine.DefaultSecurityLogic
forbidden, getAuthorizationChecker, getClientFinder, getMatchingChecker, getProfileStorageDecision, getSavedRequestHandler, perform, redirectToIdentityProvider, saveRequestedUrl, setAuthorizationChecker, setClientFinder, setMatchingChecker, setProfileStorageDecision, setSavedRequestHandler, startAuthentication, toString, unauthorized
-
Methods inherited from class org.pac4j.core.engine.AbstractExceptionAwareLogic
getErrorUrl, handleException, runtimeException, setErrorUrl
-
Methods inherited from class org.pac4j.core.profile.factory.ProfileManagerFactoryAware
getProfileManager, getProfileManagerFactory, setProfileManagerFactory
-
-
-
-
Constructor Detail
-
Pac4jHandler
public Pac4jHandler(org.pac4j.core.config.Config config, play.libs.concurrent.HttpExecutionContext httpExecutionContext, String clients, PlaySessionStore playSessionStore, Pac4jRoleHandler rolePermissionsHandler)
-
-
Method Detail
-
getId
public long getId()
- Specified by:
getId
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
beforeAuthCheck
public CompletionStage<Optional<play.mvc.Result>> beforeAuthCheck(play.mvc.Http.RequestHeader requestHeader, Optional<String> content)
- Specified by:
beforeAuthCheck
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
getSubject
public CompletionStage<Optional<? extends be.objectify.deadbolt.java.models.Subject>> getSubject(play.mvc.Http.RequestHeader requestHeader)
- Specified by:
getSubject
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
getPermissionsForRole
public CompletionStage<List<? extends be.objectify.deadbolt.java.models.Permission>> getPermissionsForRole(String roleName)
- Specified by:
getPermissionsForRole
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
onAuthFailure
public CompletionStage<play.mvc.Result> onAuthFailure(play.mvc.Http.RequestHeader requestHeader, Optional<String> content)
- Specified by:
onAuthFailure
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
getDynamicResourceHandler
public CompletionStage<Optional<be.objectify.deadbolt.java.DynamicResourceHandler>> getDynamicResourceHandler(play.mvc.Http.RequestHeader requestHeader)
- Specified by:
getDynamicResourceHandler
in interfacebe.objectify.deadbolt.java.DeadboltHandler
-
-