Default no-argument constructor, does nothing.
Constructor that accepts the <code>Realm</code>s to consult during an authorization check. Immediately calls {@link #setRealms setRealms(realms)}.
Sets the internal {@link #getPermissionResolver} on any internal configured {@link #getRealms Realms} that implement the {@link hunt.shiro.authz.permission.PermissionResolverAware PermissionResolverAware} interface. <p/> This method is called after setting a permissionResolver on this ModularRealmAuthorizer via the {@link #setPermissionResolver(hunt.shiro.authz.permission.PermissionResolver) setPermissionResolver} method. <p/> It is also called after setting one or more realms via the {@link #setRealms setRealms} method to allow these newly available realms to be given the <code>PermissionResolver</code> already in use.
Sets the internal {@link #getRolePermissionResolver} on any internal configured {@link #getRealms Realms} that implement the {@link hunt.shiro.authz.permission.RolePermissionResolverAware RolePermissionResolverAware} interface. <p/> This method is called after setting a rolePermissionResolver on this ModularRealmAuthorizer via the {@link #setRolePermissionResolver(hunt.shiro.authz.permission.RolePermissionResolver) setRolePermissionResolver} method. <p/> It is also called after setting one or more realms via the {@link #setRealms setRealms} method to allow these newly available realms to be given the <code>RolePermissionResolver</code> already in use.
Used by the {@link Authorizer Authorizer} implementation methods to ensure that the {@link #setRealms realms} has been set. The default implementation ensures the property is not null and not empty.
If !{@link #isPermitted(hunt.shiro.subject.PrincipalCollection, string) isPermitted(permission)}, throws an <code>UnauthorizedException</code> otherwise returns quietly.
If !{@link #isPermitted(hunt.shiro.subject.PrincipalCollection, Permission) isPermitted(permission)}, throws an <code>UnauthorizedException</code> otherwise returns quietly.
If !{@link #isPermitted(hunt.shiro.subject.PrincipalCollection, string...) isPermitted(permission)}, <code>UnauthorizedException</code> otherwise returns quietly.
If !{@link #isPermitted(hunt.shiro.subject.PrincipalCollection, Permission) isPermitted(permission)} for <em>all</em> the given Permissions, throws an <code>UnauthorizedException</code> otherwise returns quietly.
If !{@link #hasRole(hunt.shiro.subject.PrincipalCollection, string) hasRole(role)}, throws an <code>UnauthorizedException</code> otherwise returns quietly.
Calls {@link #checkRoles(PrincipalCollection principals, string... roles) checkRoles(PrincipalCollection principals, string... roles) }.
Calls {@link #checkRole(hunt.shiro.subject.PrincipalCollection, string) checkRole} for each role specified.
Returns the PermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default) if all realm instances will each configure their own permission resolver.
Returns the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.
Returns the RolePermissionResolver to be used on <em>all</em> configured realms, or <code>null</code (the default) if all realm instances will each configure their own permission resolver.
Returns <code>true</code> iff any of the configured realms' {@link #hasRole(hunt.shiro.subject.PrincipalCollection, string)} call returns <code>true</code> for <em>all</em> roles specified, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #hasRole(hunt.shiro.subject.PrincipalCollection, string)} call returns <code>true</code>, <code>false</code> otherwise.
Calls {@link #hasRole(hunt.shiro.subject.PrincipalCollection, string)} for each role name in the specified collection and places the return value from each call at the respective location in the returned array.
Returns <code>true</code> if any of the configured realms' {@link #isPermitted(hunt.shiro.subject.PrincipalCollection, string)} returns <code>true</code>, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #isPermitted(hunt.shiro.subject.PrincipalCollection, Permission)} call returns <code>true</code>, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #isPermittedAll(hunt.shiro.subject.PrincipalCollection, string...)} call returns <code>true</code>, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #isPermitted(hunt.shiro.subject.PrincipalCollection, List)} call returns <code>true</code>, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #isPermitted(hunt.shiro.subject.PrincipalCollection, string)} call returns <code>true</code> for <em>all</em> of the specified string permissions, <code>false</code> otherwise.
Returns <code>true</code> if any of the configured realms' {@link #isPermitted(hunt.shiro.subject.PrincipalCollection, Permission)} call returns <code>true</code> for <em>all</em> of the specified Permissions, <code>false</code> otherwise.
Sets the specified {@link PermissionResolver PermissionResolver} on <em>all</em> of the wrapped realms that implement the {@link hunt.shiro.authz.permission.PermissionResolverAware PermissionResolverAware} interface. <p/> Only call this method if you want the permission resolver to be passed to all realms that implement the <code>PermissionResolver</code> interface. If you do not want this to occur, the realms must configure themselves individually (or be configured individually).
Sets the realms wrapped by this <code>Authorizer</code> which are consulted during an authorization check.
Sets the specified {@link RolePermissionResolver RolePermissionResolver} on <em>all</em> of the wrapped realms that implement the {@link hunt.shiro.authz.permission.RolePermissionResolverAware PermissionResolverAware} interface. <p/> Only call this method if you want the permission resolver to be passed to all realms that implement the <code>RolePermissionResolver</code> interface. If you do not want this to occur, the realms must configure themselves individually (or be configured individually).
A PermissionResolver to be used by <em>all</em> configured realms. Leave <code>null</code> if you wish to configure different resolvers for different realms.
The realms to consult during any authorization check.
A RolePermissionResolver to be used by <em>all</em> configured realms. Leave <code>null</code> if you wish to configure different resolvers for different realms.
Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource summarized by the specified permission string.
Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource summarized by the specified permission.
Checks if the corresponding Subject implies the given permission strings and returns a bool array indicating which permissions are implied.
Checks if the corresponding Subject/user implies the given Permissions and returns a bool array indicating which permissions are implied.
Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permission strings, <tt>false</tt> otherwise.
Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permissions, <tt>false</tt> otherwise.
Ensures the corresponding Subject/user implies the specified permission string.
Ensures a subject/user {@link Permission#implies(Permission)} implies} the specified <tt>Permission</tt>. If the subject's existing associated permissions do not {@link Permission#implies(Permission)} imply} the given permission, an {@link AuthorizationException} will be thrown.
Ensures the corresponding Subject/user {@link Permission#implies(Permission) implies} all of the specified permission strings.
Ensures the corresponding Subject/user {@link Permission#implies(Permission) implies} all of the specified permission strings.
Returns <tt>true</tt> if the corresponding Subject/user has the specified role, <tt>false</tt> otherwise.
Checks if the corresponding Subject/user has the specified roles, returning a bool array indicating which roles are associated with the given subject.
Returns <tt>true</tt> if the corresponding Subject/user has all of the specified roles, <tt>false</tt> otherwise.
Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an {@link AuthorizationException} if they do not.
Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or throwing an {@link AuthorizationException} if they do not.
Same as {@link #checkRoles(hunt.shiro.subject.PrincipalCollection, java.util.Collection) checkRoles(PrincipalCollection subjectPrincipal, Collection<string> roleIdentifiers)} but doesn't require a collection as an argument. Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or throwing an {@link AuthorizationException} if they do not.
Sets the specified <tt>PermissionResolver</tt> on this instance.
Sets the specified <tt>RolePermissionResolver</tt> on this instance.
A <tt>ModularRealmAuthorizer</tt> is an <tt>Authorizer</tt> implementation that consults one or more configured {@link Realm Realm}s during an authorization operation.