filter

package
v1.2.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 17, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EscapeFilter

func EscapeFilter(filter string) string

EscapeFilter returns a string representation of a filter with escaped values according to RFC 4515

func ReplaceAliases added in v1.2.0

func ReplaceAliases(raw string) string

ReplaceAliases replaces aliases in a raw string

Types

type Alias

type Alias struct {
	// ID is the identifier of the alias
	ID string
	// Kind is the kind of the alias
	Kind Kind
	// Parameters are the parameters of the alias used for substitution
	Parameters []string
	// Substitution is the function used to substitute the alias
	Substitution func([]string) string
}

Alias is used to define shortcuts for filters and matching rules

func ListAliases

func ListAliases() []Alias

ListAliases returns a list of all aliases

func (Alias) String added in v1.2.0

func (a Alias) String() string

String returns a string representation of an alias

type Filter

type Filter struct {
	// Attribute is the attribute to filter on
	Attribute attributes.Attribute
	// Value is the value to filter for
	Value string
	// Rule is the matching rule bit mask to use
	Rule attributes.MatchingRule
}

Filter is used to define an LDAP filter

func And

func And(property Filter, properties ...Filter) Filter

And returns a filter that matches all given filters

func ByID

func ByID(id string) Filter

ByID returns a filter that matches an object by its ID (CN, DN, GUID, SAN, UPN, Name or DisplayName)

func HasExpired added in v1.2.0

func HasExpired() Filter

HasExpired returns a filter that matches an object that has expired

func IsDomainController

func IsDomainController() Filter

IsDomainController returns a filter that matches a domain controller

func IsEnabled

func IsEnabled() Filter

IsEnabled returns a filter that matches a not disabled user object

func IsGroup

func IsGroup() Filter

IsGroup returns a filter that matches a group

func IsUser

func IsUser() Filter

IsUser returns a filter that matches a user

func MemberOf

func MemberOf(parent string, recursive bool) Filter

MemberOf returns a filter that matches a member of a group

func Not

func Not(property Filter) Filter

Not returns a filter that matches the opposite of the given filter

func Or

func Or(property Filter, properties ...Filter) Filter

Or returns a filter that matches any of the given filters

func ParseRaw

func ParseRaw(raw string) (*Filter, error)

ParseRaw parses and validates a raw LDAP filter (RFC 4515)

func (Filter) ExpandAlias added in v1.0.1

func (o Filter) ExpandAlias() Filter

ExpandAlias expands an filter to a filter by itself or its attribute alias

func (Filter) String

func (o Filter) String() string

String returns a string representation of a filter (LDAP filter syntax)

type Kind added in v1.2.3

type Kind string

Kind is used to define the kind of an alias

const (
	// FilterImplementation is the kind of an alias that is a custom filter implementation
	FilterImplementation Kind = "filter implementation"
	// MatchingRule is the kind of an alias that is a matching rule bit mask
	MatchingRule Kind = "matching rule"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL