public class PermissionHeuristic extends Object
this takes a permissions assignment (PermissionEntry), and gives it a score so you can find the best entry, even if it is a tie, to decide if allow or deny. Max depth resource: 30 (configurable in grouper.properties) (864000) person/role assignment (432000) direct role assignment (14400 * 30) (14400) role assignment with role depth 29 (7200) assignment to user as opposed to group (3600) direct resource assignment (120*30) (120) indirect direct resource assignment depth 29 (60) direct action assignment (2*30) (58) action depth 1 (56) action depth 2 (54) action depth 3 (2) action depth 29 (1) allow
Modifier and Type | Class and Description |
---|---|
static class |
PermissionHeuristic.PermissionHeuristicType
which type of heuristic (not including depth)
|
Constructor and Description |
---|
PermissionHeuristic() |
Modifier and Type | Method and Description |
---|---|
static List<PermissionHeuristic.PermissionHeuristicType> |
allTypesOrdered()
get all types ordered by most important
|
static String |
collectionToString(Collection<PermissionHeuristic> permissionHeuristics)
convert a collection to string
|
static PermissionHeuristics |
computeHeuristics(long score)
computer heuristics
|
static long |
computePermissionHeuristic(PermissionEntry permissionEntry)
compute a heuristic based on how important the aspects of the permissionEntry are
see the class javadoc for more info
|
boolean |
equals(Object obj) |
int |
getDepth()
if this is a heuristic which has depth, then this is it, or -1
|
PermissionHeuristic.PermissionHeuristicType |
getPermissionHeuristicType()
type of heuristic
|
int |
hashCode() |
void |
setDepth(int depth1)
if this is a heuristic which has depth, then this is it, or -1
|
void |
setPermissionHeuristicType(PermissionHeuristic.PermissionHeuristicType permissionHeuristicType1)
type of heuristic
|
String |
toString() |
public PermissionHeuristic.PermissionHeuristicType getPermissionHeuristicType()
public void setPermissionHeuristicType(PermissionHeuristic.PermissionHeuristicType permissionHeuristicType1)
permissionHeuristicType1
- public boolean equals(Object obj)
equals
in class Object
Object.equals(Object)
public int hashCode()
hashCode
in class Object
Object.hashCode()
public int getDepth()
public void setDepth(int depth1)
depth1
- public static List<PermissionHeuristic.PermissionHeuristicType> allTypesOrdered()
public static PermissionHeuristics computeHeuristics(long score)
score
- public static long computePermissionHeuristic(PermissionEntry permissionEntry)
permissionEntry
- public String toString()
toString
in class Object
Object.toString()
public static String collectionToString(Collection<PermissionHeuristic> permissionHeuristics)
permissionHeuristics
- Copyright © 2016 Internet2. All rights reserved.