public class AciLDAPOperationContainer extends Object
| Constructor and Description |
|---|
AciLDAPOperationContainer(ExtendedOperation operation,
Entry e,
int rights)
Constructor interface for evaluation of the extended operation.
|
AciLDAPOperationContainer(LocalBackendAddOperation operation,
int rights)
Constructor interface for the add operation.
|
AciLDAPOperationContainer(LocalBackendCompareOperation operation,
int rights)
Constructor interface for the compare operation.
|
AciLDAPOperationContainer(LocalBackendDeleteOperation operation,
int rights)
Constructor interface for the delete operation.
|
AciLDAPOperationContainer(LocalBackendModifyOperation operation,
int rights)
Constructor interface for the modify operation.
|
AciLDAPOperationContainer(ModifyDNOperation operation,
int rights,
Entry entry)
Constructor interface for the modify DN operation.
|
AciLDAPOperationContainer(Operation operation,
Entry e,
AuthenticationInfo authInfo,
int rights)
Constructor interface for evaluation general purpose Operation, entry and
rights..
|
AciLDAPOperationContainer(Operation operation,
Entry e,
Control c,
int rights)
Constructor interface for evaluation of a control.
|
AciLDAPOperationContainer(Operation operation,
int rights,
Entry entry)
Constructor interface for all currently supported LDAP operations.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addTargAttrFiltersMatchAci(Aci aci)
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.
|
List<Aci> |
getAllowList()
Get the list allow ACIs.
|
org.forgerock.opendj.ldap.DN |
getClientDN()
Get client DN.
|
Entry |
getClientEntry()
Get the client entry.
|
String |
getControlOID()
Return the OID (Object Identifier) string of the control being evaluated.
|
org.forgerock.opendj.ldap.schema.AttributeType |
getCurrentAttributeType()
Get the current attribute type being evaluated.
|
org.forgerock.opendj.ldap.ByteString |
getCurrentAttributeValue()
The current attribute type value being evaluated.
|
int |
getCurrentSSF()
Return the current SSF (Security Strength Factor) of the underlying
connection.
|
String |
getDecidingAciName()
Return the name of the ACI that decided the last access evaluation.
|
List<Aci> |
getDenyList()
Get the list of deny ACIs.
|
EnumEvalReason |
getEvalReason()
Return the reason the last access evaluation was evaluated the way it
was.
|
String |
getEvalSummary()
Return the access evaluation summary string.
|
String |
getExtOpOID()
Return The OID (Object Identifier) string of the extended operation being
evaluated.
|
String |
getHostName()
Get the hostname of the bound connection.
|
InetAddress |
getRemoteAddress()
Get the address of the bound connection.
|
org.forgerock.opendj.ldap.DN |
getResourceDN()
Get the resource DN.
|
Entry |
getResourceEntry()
Get the entry being evaluated.
|
int |
getRights()
Return the rights for this container's LDAP operation.
|
List<org.forgerock.opendj.ldap.schema.AttributeType> |
getSpecificAttributes()
Return the list of additional attributes specified in the
geteffectiverights control.
|
String |
getTargAttrFiltersAciName()
Return the name of the ACI that last matched a targattrfilters rule.
|
boolean |
getTargAttrFiltersMatch()
Return the value of the targAttrFiltersMatch variable.
|
boolean |
hasAllOpAttributes()
Return true if the evaluating ACI contained a targetattr all
operational attributes rule match.
|
boolean |
hasAllUserAttributes()
Return true if the evaluating ACI contained a targetattr all
user attributes rule match.
|
EnumEvalResult |
hasAuthenticationMethod(org.opends.server.authorization.dseecompat.EnumAuthMethod authMethod,
String saslMech)
Determine whether the client connection has been authenticated using
a specified authentication method.
|
boolean |
hasEntryTestRule()
True if an entry test rule was found.
|
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.
|
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.
|
boolean |
hasGetEffectiveRightsControl()
Return true if the container is being used in a geteffectiverights
evaluation.
|
boolean |
hasRights(int rights)
Checks if the container's rights has the specified rights.
|
boolean |
hasSeenEntry()
Returns true if an entry has already been processed by an access proxy
check.
|
boolean |
hasTargAttrFiltersMatchAci(Aci aci)
The context maintains a hashtable of ACIs that matched the targattrfilters
keyword evaluation.
|
boolean |
hasTargAttrFiltersMatchOp(int flag)
Return true if an ACI that evaluated to deny or allow has an
targattrfilters keyword.
|
boolean |
isAddOperation()
Return true if this is an add operation needed by the userattr
USERDN parent inheritance level 0 processing.
|
boolean |
isAnonymousUser()
Check if the remote client is bound anonymously.
|
boolean |
isAuthzidAuthorizationDN()
Returns true if the geteffectiverights control's authZid DN is equal to the
authorization entry's DN.
|
boolean |
isDenyEval()
Returns true if the deny list is being evaluated.
|
boolean |
isFirstAttribute()
True if the first attribute of the resource entry is being evaluated.
|
boolean |
isGetEffectiveRightsEval()
Returns true of a match context is performing a geteffectiverights
evaluation.
|
boolean |
isMemberOf(Group<?> group)
Return true if the operation associated with this evaluation
context is a member of the specified group.
|
boolean |
isProxiedAuthorization()
Return true if a evaluation context is being used in proxied authorization
control evaluation.
|
boolean |
isTargAttrFilterMatchAciEmpty()
Returns true if the hashtable of ACIs that matched the targattrfilters
keyword evaluation is empty.
|
void |
resetEffectiveRightsParams()
Reset the values used by the geteffectiverights evaluation to
original values.
|
String |
rightToString()
Return a string representation of the current right being evaluated.
|
void |
setAllowList(List<Aci> allows)
Set the allow ACI list.
|
protected void |
setControlOID(String oid)
Set the the controlOID value to the specified oid string.
|
void |
setCurrentAttributeType(org.forgerock.opendj.ldap.schema.AttributeType type)
Set the attribute type to be evaluated.
|
void |
setCurrentAttributeValue(org.forgerock.opendj.ldap.ByteString value)
Set the attribute value to be evaluated.
|
void |
setDenyList(List<Aci> denys)
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 |
setEvalSummary(String summary)
Set the value of the summary string to the specified string.
|
void |
setEvaluationResult(EnumEvalReason reason,
Aci decidingAci)
Set the reason and the ACI that decided why the last access evaluation was
evaluated the way it was.
|
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="*").
|
protected void |
setExtOpOID(String oid)
Set the extended operation OID value to the specified oid string.
|
void |
setGetEffectiveRightsEval()
The container is going to be used in a geteffectiverights evaluation, set
the flag isGetEffectiveRightsEval to true.
|
void |
setIsFirstAttribute(boolean val)
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 |
setSeenEntry(boolean val)
Set to true if an entry has already been processed by an access proxy check.
|
void |
setTargAttrFiltersAciName(String name)
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.
|
void |
setTargAttrFiltersMatchOp(int flag)
Set a flag that specifies that a ACI that evaluated to either deny or
allow contains a targattrfilters keyword.
|
String |
toString() |
void |
useAuthzid(boolean v)
Use the DN from the geteffectiverights control's authzId as the
client DN, rather than the authorization entry's DN.
|
public AciLDAPOperationContainer(Operation operation, int rights, Entry entry)
operation - The compare operation to evaluate.rights - The rights of a compare operation.entry - The entry for evaluation.public AciLDAPOperationContainer(LocalBackendCompareOperation operation, int rights)
operation - The compare operation to evaluate.rights - The rights of a compare operation.public AciLDAPOperationContainer(Operation operation, Entry e, AuthenticationInfo authInfo, int rights)
operation - The operation to use in the evaluation.e - The entry for evaluation.authInfo - The authentication information to use in the evaluation.rights - The rights of the operation.public AciLDAPOperationContainer(Operation operation, Entry e, Control c, int rights)
operation - The operation to use in the evaluation.e - An entry built especially for evaluation.c - The control to evaluate.rights - The rights of a control.public AciLDAPOperationContainer(ExtendedOperation operation, Entry e, int rights)
operation - The extended operation to evaluate.e - An entry built especially for evaluation.rights - The rights of a extended operation.public AciLDAPOperationContainer(LocalBackendAddOperation operation, int rights)
operation - The add operation to evaluate.rights - The rights of an add operation.public AciLDAPOperationContainer(LocalBackendDeleteOperation operation, int rights)
operation - The add operation to evaluate.rights - The rights of a delete operation.public AciLDAPOperationContainer(LocalBackendModifyOperation operation, int rights)
rights - The rights of modify operation.operation - The add operation to evaluate.public AciLDAPOperationContainer(ModifyDNOperation operation, int rights, Entry entry)
operation - The modify DN operation.rights - The rights of the modify DN operation.entry - The entry to evaluated for this modify DN.public boolean hasSeenEntry()
public void setSeenEntry(boolean val)
val - The value to set the seenEntry boolean to.public boolean isProxiedAuthorization()
AciEvalContextisProxiedAuthorization in interface AciEvalContexttrue if evaluation context is being used in proxied
authorization control evaluation.public boolean isGetEffectiveRightsEval()
AciTargetMatchContextisGetEffectiveRightsEval in interface AciEvalContextisGetEffectiveRightsEval in interface AciTargetMatchContextpublic void setGetEffectiveRightsEval()
public boolean hasGetEffectiveRightsControl()
public void useAuthzid(boolean v)
v - The valued to set the useAuthzid to.public List<org.forgerock.opendj.ldap.schema.AttributeType> getSpecificAttributes()
public void addTargAttrFiltersMatchAci(Aci aci)
AciTargetMatchContextaddTargAttrFiltersMatchAci in interface AciTargetMatchContextaci - The ACI to save.public boolean hasTargAttrFiltersMatchAci(Aci aci)
AciEvalContexthasTargAttrFiltersMatchAci in interface AciEvalContextaci - The ACI that to evaluate if it contains a match during
targattrfilters keyword evaluation.true if a specified ACI matched targattrfilters evaluation.public boolean isTargAttrFilterMatchAciEmpty()
AciEvalContextisTargAttrFilterMatchAciEmpty in interface AciEvalContexttrue if there were not any ACIs that matched
targattrfilters keyword evaluation.public void resetEffectiveRightsParams()
public void setTargAttrFiltersAciName(String name)
AciTargetMatchContextsetTargAttrFiltersAciName in interface AciEvalContextsetTargAttrFiltersAciName in interface AciTargetMatchContextname - The ACI's name to save.public String getTargAttrFiltersAciName()
AciEvalContextgetTargAttrFiltersAciName in interface AciEvalContextpublic void setTargAttrFiltersMatchOp(int flag)
AciEvalContextsetTargAttrFiltersMatchOp in interface AciEvalContextflag - Either the integer value representing an allow or a deny,
but not both.public boolean hasTargAttrFiltersMatchOp(int flag)
AciEvalContexthasTargAttrFiltersMatchOp in interface AciEvalContextflag - The integer value specifying either a deny or allow, but not
both.true if the ACI has an targattrfilters keyword.public String getDecidingAciName()
AciEvalContextgetDecidingAciName in interface AciEvalContextpublic void setEvaluationResult(EnumEvalReason reason, Aci decidingAci)
AciEvalContextsetEvaluationResult in interface AciEvalContextreason - The enumeration representing the reason of the last access
evaluation.decidingAci - The ACI that decided the last access evaluation.public EnumEvalReason getEvalReason()
AciEvalContextgetEvalReason in interface AciEvalContextpublic void setEvalSummary(String summary)
AciEvalContextsetEvalSummary in interface AciEvalContextsummary - The string to set the summary string topublic String getEvalSummary()
AciEvalContextgetEvalSummary in interface AciEvalContextpublic boolean isAuthzidAuthorizationDN()
public void setDenyList(List<Aci> denys)
AciTargetMatchContextsetDenyList in interface AciTargetMatchContextdenys - The deny ACI list.public void setAllowList(List<Aci> allows)
AciTargetMatchContextsetAllowList in interface AciTargetMatchContextallows - The list of allow ACIs.public org.forgerock.opendj.ldap.schema.AttributeType getCurrentAttributeType()
AciTargetMatchContextgetCurrentAttributeType in interface AciEvalContextgetCurrentAttributeType in interface AciTargetMatchContextpublic org.forgerock.opendj.ldap.ByteString getCurrentAttributeValue()
AciTargetMatchContextgetCurrentAttributeValue in interface AciTargetMatchContextpublic void setCurrentAttributeType(org.forgerock.opendj.ldap.schema.AttributeType type)
AciTargetMatchContextsetCurrentAttributeType in interface AciTargetMatchContexttype - The attribute type to set to.public void setCurrentAttributeValue(org.forgerock.opendj.ldap.ByteString value)
AciTargetMatchContextsetCurrentAttributeValue in interface AciTargetMatchContextvalue - The current attribute value to set to.public boolean isFirstAttribute()
AciTargetMatchContextisFirstAttribute in interface AciTargetMatchContextpublic void setIsFirstAttribute(boolean val)
AciTargetMatchContextsetIsFirstAttribute in interface AciTargetMatchContextval - True if this is the first attribute of the
resource entry being evaluated.public boolean hasEntryTestRule()
AciTargetMatchContexthasEntryTestRule in interface AciTargetMatchContextpublic void setEntryTestRule(boolean val)
AciTargetMatchContextsetEntryTestRule in interface AciTargetMatchContextval - True if an entry test rule was found.public Entry getResourceEntry()
AciTargetMatchContextgetResourceEntry in interface AciEvalContextgetResourceEntry in interface AciTargetMatchContextpublic Entry getClientEntry()
AciEvalContextgetClientEntry in interface AciEvalContextpublic List<Aci> getDenyList()
AciEvalContextgetDenyList in interface AciEvalContextpublic List<Aci> getAllowList()
AciEvalContextgetAllowList in interface AciEvalContextpublic boolean isDenyEval()
AciEvalContextisDenyEval in interface AciEvalContextpublic boolean isAnonymousUser()
AciEvalContextisAnonymousUser in interface AciEvalContexttrue if client is bound anonymously.public org.forgerock.opendj.ldap.DN getClientDN()
AciEvalContextgetClientDN in interface AciEvalContextpublic org.forgerock.opendj.ldap.DN getResourceDN()
AciEvalContextgetResourceDN in interface AciEvalContextpublic boolean hasRights(int rights)
JNR: I find the implementation in this method dubious.
hasRights in interface AciEvalContexthasRights in interface AciTargetMatchContextrights - The rights to check for.EnumRight.hasRights(int, int)public int getRights()
AciTargetMatchContextgetRights in interface AciEvalContextgetRights in interface AciTargetMatchContextpublic void setRights(int rights)
AciTargetMatchContextsetRights in interface AciTargetMatchContextrights - The rights to set the container's rights to.public String getHostName()
AciEvalContextgetHostName in interface AciEvalContextpublic InetAddress getRemoteAddress()
AciEvalContextgetRemoteAddress in interface AciEvalContextpublic boolean isAddOperation()
AciEvalContextisAddOperation in interface AciEvalContexttrue if this is an add operation.public void setTargAttrFiltersMatch(boolean v)
AciTargetMatchContextsetTargAttrFiltersMatch in interface AciTargetMatchContextv - The value to use.public boolean getTargAttrFiltersMatch()
AciTargetMatchContextgetTargAttrFiltersMatch in interface AciTargetMatchContextpublic String getControlOID()
AciTargetMatchContextgetControlOID in interface AciTargetMatchContextpublic String getExtOpOID()
AciTargetMatchContextgetExtOpOID in interface AciTargetMatchContextprotected void setControlOID(String oid)
oid - The control oid string.protected void setExtOpOID(String oid)
oid - The extended operation oid string.public EnumEvalResult hasAuthenticationMethod(org.opends.server.authorization.dseecompat.EnumAuthMethod authMethod, String saslMech)
AciEvalContexthasAuthenticationMethod in interface AciEvalContextauthMethod - The required authentication method.saslMech - The required SASL mechanism if the authentication method
is SASL.public boolean isMemberOf(Group<?> group)
AciEvalContextisMemberOf in interface AciEvalContextgroup - The group to check membership in.true if the authorization DN of the operation is a
member of the specified group.public String rightToString()
JNR: I find the implementation in this method dubious.
rightToString in interface AciEvalContextEnumRight.getEnumRight(int)public void setEvalUserAttributes(int v)
AciTargetMatchContextsetEvalUserAttributes in interface AciTargetMatchContextv - The mask to this value.public void setEvalOpAttributes(int v)
AciTargetMatchContextsetEvalOpAttributes in interface AciTargetMatchContextv - The mask to this value.public boolean hasEvalUserAttributes()
AciTargetMatchContexthasEvalUserAttributes in interface AciTargetMatchContextpublic boolean hasEvalOpAttributes()
AciTargetMatchContexthasEvalOpAttributes in interface AciTargetMatchContextpublic boolean hasAllUserAttributes()
public boolean hasAllOpAttributes()
public void clearEvalAttributes(int v)
AciTargetMatchContextclearEvalAttributes in interface AciTargetMatchContextv - The flag to clear or 0 to set the mask to 0.public int getCurrentSSF()
AciEvalContextgetCurrentSSF in interface AciEvalContextCopyright © 2010-2020 Wren Security. All Rights Reserved.