Package io.inversion.action.security
Class AclFilter
- java.lang.Object
-
- io.inversion.Rule<A>
-
- io.inversion.Action<A>
-
- io.inversion.Filter<AclFilter>
-
- io.inversion.action.security.AclFilter
-
- All Implemented Interfaces:
java.lang.Comparable<AclFilter>
public class AclFilter extends Filter<AclFilter>
The AclAction secures an API by making sure that a requests matches one or more declared AclRulesAclRules specify the roles and permissions that a user must have to access specific method/path combinations and can also specify input/output parameters that are either required or restricted
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.inversion.Rule
Rule.RuleMatcher
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<AclRule>aclRules-
Fields inherited from class io.inversion.Rule
ALL_METHODS, configMap, description, excludeMatchers, excludeOn, includeMatchers, includeOn, log, name, order, params
-
-
Constructor Summary
Constructors Constructor Description AclFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<AclRule>getAclRules()AclFilterorRequireAllPerms(java.lang.String permissions, java.lang.String... includedOn)AclFilterorRequireAllRoles(java.lang.String roles, java.lang.String... includedOn)AclFilterorRequireAllScopes(java.lang.String scopes, java.lang.String... includedOn)AclFilterorRequireOnePerm(java.lang.String permissions, java.lang.String... includedOn)AclFilterorRequireOneRole(java.lang.String roles, java.lang.String... includedOn)AclFilterorRequireOneScope(java.lang.String scopes, java.lang.String... includedOn)voidrun(Request req, Response resp)Override this method with your custom business logic or override one of the http method "doMETHOD" specific handlers.AclFilterwithAclRules(AclRule... acls)-
Methods inherited from class io.inversion.Action
configureOp, doDelete, doGet, doPatch, doPost, doPut, getFullIncludePaths, getIncludePaths, isDecoration, joinPaths, joinPaths0, run0, withDecoration
-
Methods inherited from class io.inversion.Rule
afterWiringComplete, checkLazyConfig, compareTo, doLazyConfig, getAllExcludePaths, getAllIncludeMethods, getAllIncludePaths, getDefaultIncludeMatchers, getDescription, getExcludeMatchers, getIncludeMatchers, getName, getOrder, getParams, match, match, matches, matches, toString, withDescription, withExcludeOn, withExcludeOn, withIncludeOn, withIncludeOn, withName, withOrder, withParam, withParams
-
-
-
-
Field Detail
-
aclRules
protected final java.util.List<AclRule> aclRules
-
-
Method Detail
-
orRequireAllPerms
public AclFilter orRequireAllPerms(java.lang.String permissions, java.lang.String... includedOn)
-
orRequireOnePerm
public AclFilter orRequireOnePerm(java.lang.String permissions, java.lang.String... includedOn)
-
orRequireAllRoles
public AclFilter orRequireAllRoles(java.lang.String roles, java.lang.String... includedOn)
-
orRequireOneRole
public AclFilter orRequireOneRole(java.lang.String roles, java.lang.String... includedOn)
-
orRequireAllScopes
public AclFilter orRequireAllScopes(java.lang.String scopes, java.lang.String... includedOn)
-
orRequireOneScope
public AclFilter orRequireOneScope(java.lang.String scopes, java.lang.String... includedOn)
-
getAclRules
public java.util.List<AclRule> getAclRules()
-
run
public void run(Request req, Response resp) throws ApiException
Description copied from class:ActionOverride this method with your custom business logic or override one of the http method "doMETHOD" specific handlers.- Overrides:
runin classAction<AclFilter>- Parameters:
req- the Request being servicedresp- the Reponse being generated- Throws:
ApiException
-
-