| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- package ldap
- import (
- "strings"
- "gopkg.in/ldap.v3"
- )
- func isMemberOf(memberOf []string, group string) bool {
- if group == "*" {
- return true
- }
- for _, member := range memberOf {
- if strings.EqualFold(member, group) {
- return true
- }
- }
- return false
- }
- func appendIfNotEmpty(slice []string, values ...string) []string {
- for _, v := range values {
- if v != "" {
- slice = append(slice, v)
- }
- }
- return slice
- }
- func getAttribute(name string, entry *ldap.Entry) string {
- if strings.ToLower(name) == "dn" {
- return entry.DN
- }
- for _, attr := range entry.Attributes {
- if attr.Name == name {
- if len(attr.Values) > 0 {
- return attr.Values[0]
- }
- }
- }
- return ""
- }
- func getArrayAttribute(name string, entry *ldap.Entry) []string {
- if strings.ToLower(name) == "dn" {
- return []string{entry.DN}
- }
- for _, attr := range entry.Attributes {
- if attr.Name == name && len(attr.Values) > 0 {
- return attr.Values
- }
- }
- return []string{}
- }
|