Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LDAPInterface ¶
type LDAPInterface struct {
// contains filtered or unexported fields
}
LDAPInterface extracts the member list of an LDAP group entry from an LDAP server with first-class LDAP entries for groups. The LDAPInterface is *NOT* thread-safe.
func NewLDAPInterface ¶
func NewLDAPInterface(clientConfig ldapclient.Config, groupQuery ldaputil.LDAPQueryOnAttribute, groupNameAttributes []string, groupMembershipAttributes []string, userQuery ldaputil.LDAPQueryOnAttribute, userNameAttributes []string) *LDAPInterface
NewLDAPInterface builds a new LDAPInterface using a schema-appropriate config
func (*LDAPInterface) ExtractMembers ¶
func (e *LDAPInterface) ExtractMembers(ldapGroupUID string) ([]*ldap.Entry, error)
ExtractMembers returns the LDAP member entries for a group specified with a ldapGroupUID
func (*LDAPInterface) GroupEntryFor ¶
func (e *LDAPInterface) GroupEntryFor(ldapGroupUID string) (*ldap.Entry, error)
GroupFor returns an LDAP group entry for the given group UID by searching the internal cache of the LDAPInterface first, then sending an LDAP query if the cache did not contain the entry. This also satisfies the LDAPGroupGetter interface
func (*LDAPInterface) ListGroups ¶
func (e *LDAPInterface) 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