Ich versuche FreeIPA Integration mit Golang mit Paket "gopkg.in/ldap.v2", ich erstellte eine Rolle mit dem Namen "Test" in FreeIPA UI und versuchte, diese RolleFree-IPA Ldap Intergration mit GO
zu suchenüber die Kommandozeile:
ldapsearch -D "cn = Directory Manager" -w "*****" -p 389 -h „EC2-test.eu-west-1.compute. amazonaws.com "-b" dc = ec2-Test, dc = eu-west-1, dc = berechnen, dc = amazonaws, dc = com "-v -s sub" (& (Objektklasse = *) (cn = test)) "
Ausgang:
ldap_initialize(ldap://ec2-test.eu-west-1.compute.amazonaws.com:389) filter: (&(objectclass=*)(cn=test)) requesting: All userApplication attributes
# extended LDIF
#
# LDAPv3
# base <dc=ec2-test,dc=eu-west-1,dc=compute,dc=amazonaws,dc=com> with scope subtree
# filter: (&(objectclass=*)(cn=test))
# requesting: ALL
#
# test, roles, accounts, ec2-test.eu-west-1.compute.amazonaws.com
dn: cn=test,cn=roles,cn=accounts,dc=ec2-test,dc=eu-west-1,dc=compute,dc=amazonaws,dc=com
objectClass: groupofnames
objectClass: nestedgroup
objectClass: top
cn: test
member: uid=gow,cn=users,cn=accounts,dc=ec2-test,dc=eu-west-1,dc=comp ute,dc=amazonaws,dc=com
member: cn=trov,cn=groups,cn=accounts,dc=ec2-test,dc=eu-west-1,dc=com pute,dc=amazonaws,dc=com
# search result search: 2 result: 0 Success
# numResponses: 2
# numEntries: 1
Ich versuche, dies mit meinem Go-Code zu integrieren. My go-Code ist:
filterValue := "(&(objectclass="*")(cn="test"))"
searchRequest := ldap.NewSearchRequest(
baseDN, // The base dn to search
ldap.ScopeWholeSubtree, ldap.NeverDerefAliases, 0, 0, false,
filterValue, // The filter to apply
[]string{"givenName", "sn", "mail", "uid", "ou", "cn", "dc", "dn"}, // A list attributes to retrieve
nil,
)
sr, err := ldap.Search(searchRequest)
if err!=nil {
fmt.Println("Error: , err)
} else {
fmt.Println("Result: , sr.Entries)
}
Leider mit golang Ich erhalte diese leere Einträge in sr.Entries
Kann mir jemand helfen zu bekommen.
Hinweis: Die adaequat für Benutzer und Gruppen.
Sind Sie verbindlich wie "cn = Verzeichnis-Manager" für die Befehlszeile? Könnte ein Rechtsproblem sein. – jwilleke
@jwilleke, danke für Ihre Antwort, tatsächlich verwenden wir go ldap sdk, wie ich oben erwähnt, in der Funktion mit der Suche nach Benutzern "ldap.NewSearchRequest" es ist nicht erlaubt, zusätzliche Parameter übergeben (cn = Verzeichnis-Manager) –