- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在尝试使用包“gopkg.in/ldap.v2”将 FreeIPA 与 golang 集成,我在 FreeIPA UI 中创建了一个名为“test”的角色并尝试搜索该角色
通过命令行:
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=compute,dc=amazonaws,dc=com" -v -s sub "(&(objectclass=*)(cn=test))"
输出:
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
我正在尝试将其与我的 go 代码集成。我的代码是:
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)
}
不幸的是,我在 sr.Entries
中得到空条目谁能帮我用 golang 得到这个。
Note: Its working fine for users and groups.
最佳答案
您“可能”需要在使用某些东西开始搜索之前进行绑定(bind) like :
// The username and password we want to check
username := "someuser"
password := "userpassword"
bindusername := "readonly"
bindpassword := "password"
l, err := ldap.Dial("tcp", fmt.Sprintf("%s:%d", "ldap.example.com", 389))
if err != nil {
log.Fatal(err)
}
defer l.Close()
// Reconnect with TLS
err = l.StartTLS(&tls.Config{InsecureSkipVerify: true})
if err != nil {
log.Fatal(err)
}
// First bind with a read only user
err = l.Bind(bindusername, bindpassword)
if err != nil {
log.Fatal(err)
}
// Search for the given username
searchRequest := ldap.NewSearchRequest(
"dc=example,dc=com",
ldap.ScopeWholeSubtree, ldap.NeverDerefAliases, 0, 0, false,
fmt.Sprintf("(&(objectClass=organizationalPerson)(uid=%s))", username),
[]string{"dn"},
nil,
)
让我知道我能提供什么帮助。
关于go - Freeipa Ldap 与 GO 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45008714/
我在 IPA 服务器和副本(Centos 6.6 ipa-server-3.0.0)之间复制注册到 FreeIPA 的主机时遇到问题。 如果主机已注册到副本,我无法在 Master WEB UI 上看
我已经设置了一个 FreeIPA 服务器。我面临一个问题,即首次创建用户时密码已过期。所以新用户在第一次登录时应该总是设置他的密码,定义在 here 中。 .但我不想要这个功能。 我正在使用 this
我已经为我的系统配置了一个 IPA 域,并且还启用了当用户使用 --enablemkhomedir 选项登录时自动创建主目录。我遇到的问题是每当用户登录时,都会为它创建一个主目录,权限为 755。但我
我需要检查用户是否属于 FreeIPA 上的某个组。 (目前,我正在命令行上进行测试,以便在 Node 中编写实际代码之前进行正确的搜索)。基于搜索,我使用以下查询: ldapsearch -x -b
我们正在使用我们现有的 CA 进行 freeipa 安装。在安装过程中,会生成 CSR,并且必须由 CA 签名才能创建证书。这个证书必须有 X509v3 Basic Constraints: CA:T
当我运行以下命令时出现错误: docker run --name freeipa-server-container -ti \ -h ipa.example.test \ --read-o
我收到一条消息,说我已在我的 CentOS 计算机上成功安装了 FreeIPA,但是当我尝试从浏览器登录时,我收到此消息。 我的主机名是 mike.imagine所以我输入https://mike.i
我刚才想知道如何为 cname 创建 ssl 证书。这是因为我们总是为我们的虚拟机使用通用的 a 记录。用户应通过 SSL 通过服务名称访问在这些虚拟机上运行的服务。我们使用 FreeIPA 作为我们
我正在尝试使用包“gopkg.in/ldap.v2”将 FreeIPA 与 golang 集成,我在 FreeIPA UI 中创建了一个名为“test”的角色并尝试搜索该角色 通过命令行: ldaps
主机操作系统是Ubuntu 19.10。我已经成功启动FreeIPA container使用 docker run,但我想让它在 compose 中工作。当我运行 docker-compose up
我在 Linux 机器上配置 IPA Cleint (FreeIPA) 时遇到此错误。 Kerberos authentication failed kinit: Clock skew too gre
根据 https://www.freeipa.org/page/Downloads,最新的 freeIPA 版本是 4.8.7 ,但是当尝试在新的 Vanilla CentOS 7.7 机器上安装它时
“正条目”和“负条目”统计信息位于“主机缓存”部分下的 nscd -g 命令中。从nscd.conf手册中,我看到“正项是指定缓存中的成功查询”和“负项是指定缓存中的成功查询”。但是,当查询本身意味着
我是一名优秀的程序员,十分优秀!