Interface AciTargetMatchContext
public interface AciTargetMatchContext
The AciTargetMatchContext interface provides a view of an AciContainer that exposes information to be used by the
Aci.isApplicable() method to determine if an ACI is applicable (targets matched) to the LDAP operation, operation
rights and entry and attributes having access checked on.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add the specified ACI to a list of ACIs that have a targattrfilters rule that matched.void
clearEvalAttributes
(int v) Used to clear the mask used to detect if access checking needs to be performed on individual attributes types.Return the OID (Object Identifier) string of the control being evaluated.Get the current attribute type being evaluated.The current attribute type value being evaluated.Return The OID (Object Identifier) string of the extended operation being evaluated.Get the entry being evaluated.int
Return the rights for this container's LDAP operation.Return the server context.boolean
Return the value of the targAttrFiltersMatch variable.boolean
True if an entry test rule was found.boolean
Return true if the evaluating ACI either contained an explicitly defined operational attribute type in a targetattr target rule or both a targetattr all operational attributes rule matched and a explicitly defined targetattr target rule matched.boolean
Return true if the evaluating ACI either contained an explicitly defined user attribute type in a targeattr target rule or both a targetattr all user attributes rule matched and a explicitly defined targetattr target rule matched.boolean
hasRights
(int rights) Checks if the container's rights has the specified rights.boolean
True if the first attribute of the resource entry is being evaluated.boolean
Returns true of a match context is performing a geteffectiverights evaluation.void
setAllowList
(List<Aci> allowList) Set the allow ACI list.void
Set the attribute type to be evaluated.void
Set the attribute value to be evaluated.void
setDenyList
(List<Aci> denyList) Set the deny ACI list.void
setEntryTestRule
(boolean val) True if the target matching code found an entry test rule.void
setEvalOpAttributes
(int v) This method toggles a mask that indicates that access checking of individual operational attributes may or may not be skipped depending on if there is a single ACI containing a targetattr all operational attributes rule (targetattr="+").void
setEvalUserAttributes
(int v) This method toggles a mask that indicates that access checking of individual user attributes may or may not be skipped depending on if there is a single ACI containing a targetattr all user attributes rule (targetattr="*").void
setIsFirstAttribute
(boolean isFirst) Set to true if the first attribute of the resource entry is being evaluated.void
setRights
(int rights) Set the rights of the container to the specified rights.void
Save the name of the last ACI that matched a targattrfilters rule.void
setTargAttrFiltersMatch
(boolean v) Set to true if the ACI had a targattrfilter rule that matched.
-
Method Details
-
setDenyList
Set the deny ACI list.- Parameters:
denyList
- The deny ACI list.
-
setAllowList
Set the allow ACI list.- Parameters:
allowList
- The list of allow ACIs.
-
getResourceEntry
Entry getResourceEntry()Get the entry being evaluated. This is known as the resource entry.- Returns:
- The entry being evaluated.
-
getCurrentAttributeType
AttributeType getCurrentAttributeType()Get the current attribute type being evaluated.- Returns:
- The attribute type being evaluated.
-
getCurrentAttributeValue
ByteString getCurrentAttributeValue()The current attribute type value being evaluated.- Returns:
- The current attribute type value being evaluated.
-
isFirstAttribute
boolean isFirstAttribute()True if the first attribute of the resource entry is being evaluated.- Returns:
- True if this is the first attribute.
-
setIsFirstAttribute
void setIsFirstAttribute(boolean isFirst) Set to true if the first attribute of the resource entry is being evaluated.- Parameters:
isFirst
- True if this is the first attribute of the resource entry being evaluated.
-
setCurrentAttributeType
Set the attribute type to be evaluated.- Parameters:
type
- The attribute type to set to.
-
setCurrentAttributeValue
Set the attribute value to be evaluated.- Parameters:
v
- The current attribute value to set to.
-
setEntryTestRule
void setEntryTestRule(boolean val) True if the target matching code found an entry test rule. An entry test rule is an ACI without a targetattr target rule.- Parameters:
val
- True if an entry test rule was found.
-
hasEntryTestRule
boolean hasEntryTestRule()True if an entry test rule was found.- Returns:
- True if an entry test rule was found.
-
getRights
int getRights()Return the rights for this container's LDAP operation.- Returns:
- The rights for the container's LDAP operation.
-
getControlOID
String getControlOID()Return the OID (Object Identifier) string of the control being evaluated.- Returns:
- The OID string of the control being evaluated.
-
getExtOpOID
String getExtOpOID()Return The OID (Object Identifier) string of the extended operation being evaluated.- Returns:
- The OID string of the extended operation being evaluated.
-
hasRights
boolean hasRights(int rights) Checks if the container's rights has the specified rights.- Parameters:
rights
- The rights to check for.- Returns:
- True if the container's rights has the specified rights.
-
setRights
void setRights(int rights) Set the rights of the container to the specified rights.- Parameters:
rights
- The rights to set the container's rights to.
-
setTargAttrFiltersMatch
void setTargAttrFiltersMatch(boolean v) Set to true if the ACI had a targattrfilter rule that matched.- Parameters:
v
- The value to use.
-
getTargAttrFiltersMatch
boolean getTargAttrFiltersMatch()Return the value of the targAttrFiltersMatch variable. This is set to true if the ACI had a targattrfilter rule that matched.- Returns:
- True if the ACI had a targattrfilter rule that matched.
-
addTargAttrFiltersMatchAci
Add the specified ACI to a list of ACIs that have a targattrfilters rule that matched. This is used by geteffectiverights to determine the rights of an attribute that possibly might evaluate to true.- Parameters:
aci
- The ACI to save.
-
setTargAttrFiltersAciName
Save the name of the last ACI that matched a targattrfilters rule. This is used by geteffectiverights evaluation.- Parameters:
name
- The ACI's name to save.
-
isGetEffectiveRightsEval
boolean isGetEffectiveRightsEval()Returns true of a match context is performing a geteffectiverights evaluation.- Returns:
- True if a match context is evaluating geteffectiverights.
-
setEvalUserAttributes
void setEvalUserAttributes(int v) This method toggles a mask that indicates that access checking of individual user attributes may or may not be skipped depending on if there is a single ACI containing a targetattr all user attributes rule (targetattr="*"). The only case where individual user attribute access checking can be skipped, is when a single ACI matched using a targetattr all user attributes rule and the attribute type being check is not operational.- Parameters:
v
- The mask to this value.
-
setEvalOpAttributes
void setEvalOpAttributes(int v) This method toggles a mask that indicates that access checking of individual operational attributes may or may not be skipped depending on if there is a single ACI containing a targetattr all operational attributes rule (targetattr="+"). The only case where individual operational attribute access checking can be skipped, is when a single ACI matched using a targetattr all operational attributes rule and the attribute type being check is operational.- Parameters:
v
- The mask to this value.
-
hasEvalUserAttributes
boolean hasEvalUserAttributes()Return true if the evaluating ACI either contained an explicitly defined user attribute type in a targeattr target rule or both a targetattr all user attributes rule matched and a explicitly defined targetattr target rule matched.- Returns:
- True if the above condition was seen.
-
hasEvalOpAttributes
boolean hasEvalOpAttributes()Return true if the evaluating ACI either contained an explicitly defined operational attribute type in a targetattr target rule or both a targetattr all operational attributes rule matched and a explicitly defined targetattr target rule matched.- Returns:
- True if the above condition was seen.
-
clearEvalAttributes
void clearEvalAttributes(int v) Used to clear the mask used to detect if access checking needs to be performed on individual attributes types. The specified value is cleared from the mask or if the value equals 0 the mask is completely cleared.- Parameters:
v
- The flag to clear or 0 to set the mask to 0.
-
getServerContext
ServerContext getServerContext()Return the server context.- Returns:
- the server context
-