dissect.util.ldap¶
Module Contents¶
Classes¶
Generic enumeration. |
|
Generic enumeration. |
|
Represents an LDAP search filter (simple or nested). |
Functions¶
Optimize an LDAP query in-place. |
- exception dissect.util.ldap.InvalidQueryError¶
Bases:
dissect.util.exceptions.ErrorCommon base class for all non-exit exceptions.
- class dissect.util.ldap.LogicalOperator¶
Bases:
enum.EnumGeneric enumeration.
Derive from this class to define new enumerations.
- AND = '&'¶
- OR = '|'¶
- NOT = '!'¶
- class dissect.util.ldap.ComparisonOperator¶
Bases:
enum.EnumGeneric enumeration.
Derive from this class to define new enumerations.
- GE = '>='¶
- LE = '<='¶
- GT = '>'¶
- LT = '<'¶
- EQ = '='¶
- APPROX = '~='¶
- BIT = ':='¶
- EXTENDED = ':'¶
- class dissect.util.ldap.SearchFilter(query: str)¶
Represents an LDAP search filter (simple or nested).
- Parameters:
query – The LDAP search filter string.
- query: str¶
- children: list[SearchFilter] = []¶
- operator: LogicalOperator | ComparisonOperator | None = None¶
- attribute: str | None = None¶
- value: str | None = None¶
- __repr__() str¶
- classmethod parse(query: str, optimize: bool = True) SearchFilter¶
Parse an LDAP query into a filter object, with optional optimization.
- is_nested() bool¶
Return whether the filter is nested (i.e., contains logical operators and child filters).
- format() str¶
Format the search filter back into an LDAP query string.
- dissect.util.ldap.optimize_ldap_query(query: SearchFilter) tuple[SearchFilter, int]¶
Optimize an LDAP query in-place.
Removes redundant conditions and sorts filters and conditions based on how specific they are.
- Parameters:
query – The LDAP query to optimize.
- Returns:
A tuple containing the optimized LDAP query and its weight.