ad

package
v4.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: May 1, 2019 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ADLDAPInterface

type ADLDAPInterface struct {
	// contains filtered or unexported fields
}

ADLDAPInterface extracts the member list of an LDAP group entry from an LDAP server with first-class LDAP entries for user only. The ADLDAPInterface is *NOT* thread-safe.

func NewADLDAPInterface

func NewADLDAPInterface(clientConfig ldapclient.Config,
	userQuery ldaputil.LDAPQuery,
	groupMembershipAttributes []string,
	userNameAttributes []string) *ADLDAPInterface

NewADLDAPInterface builds a new ADLDAPInterface using a schema-appropriate config

func (*ADLDAPInterface) Exists

func (e *ADLDAPInterface) Exists(ldapGrouUID string) (bool, error)

Exists determines if a group idenified with its LDAP group UID exists on the LDAP server

func (*ADLDAPInterface) ExtractMembers

func (e *ADLDAPInterface) ExtractMembers(ldapGroupUID string) ([]*ldap.Entry, error)

ExtractMembers returns the LDAP member entries for a group specified with a ldapGroupUID

func (*ADLDAPInterface) ListGroups

func (e *ADLDAPInterface) ListGroups() ([]string, error)

ListGroups queries for all groups as configured with the common group filter and returns their LDAP group UIDs. This also satisfies the LDAPGroupLister interface

type AugmentedADLDAPInterface

type AugmentedADLDAPInterface struct {
	*ADLDAPInterface
	// contains filtered or unexported fields
}

AugmentedADLDAPInterface extracts the member list of an LDAP user entry from an LDAP server with first-class LDAP entries for users and group. Group membership is on the user. The AugmentedADLDAPInterface is *NOT* thread-safe.

func NewAugmentedADLDAPInterface

func NewAugmentedADLDAPInterface(clientConfig ldapclient.Config,
	userQuery ldaputil.LDAPQuery,
	groupMembershipAttributes []string,
	userNameAttributes []string,
	groupQuery ldaputil.LDAPQueryOnAttribute,
	groupNameAttributes []string) *AugmentedADLDAPInterface

NewLDAPInterface builds a new LDAPInterface using a schema-appropriate config

func (*AugmentedADLDAPInterface) Exists

func (e *AugmentedADLDAPInterface) Exists(ldapGroupUID string) (bool, error)

Exists determines if a group idenified with its LDAP group UID exists on the LDAP server

func (*AugmentedADLDAPInterface) GroupEntryFor

func (e *AugmentedADLDAPInterface) GroupEntryFor(ldapGroupUID string) (*ldap.Entry, error)

GroupEntryFor returns an LDAP group entry for the given group UID by searching the internal cache of the AugmentedADLDAPInterface first, then sending an LDAP query if the cache did not contain the entry. This also satisfies the LDAPGroupGetter interface

Jump to

Keyboard shortcuts

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