使用 Net::LDAP 或 ldapsearch 返回对象属性的属性
在我们的公司 LDAP 结构中,“用户”有两个属性:
uid = 用户经理的 id
= 用户经理的 DN
因为我正在编写一个脚本来找出用户的组织链,所以我想能够通过单个查询找到经理的 uid。现在,我必须在 2 个查询中完成此操作:
$ ldapsearch -h ldap.example.com -p 389 -b dc=example,dc=com uid=myuid manager
dn: cn=mycn,L=AMER,DC=EXAMPLE,DC=COM
manager: cn=mymanagercn,L=AMER,DC=EXAMPLE,DC=COM
解析 cn 值“mymanagercn”,然后运行另一个查询:
$ ldapsearch -h ldap.example.com -p 389 -b dc=example,dc=com cn=mymanagercn uid
dn: cn=mymanagercn,L=AMER,DC=EXAMPLE,DC=COM
uid: mymanageruid
有没有办法用 1 个查询来完成此操作?如果您可以使用 Net::LDAP Perl 模块来完成此操作,那就加分了!
In our corporate LDAP structure a 'user' has two attributes:
uid = the id of the user
manager = the DN of the user's manager
Since I'm writing a script to find out the organization chain for a user, I'd like to be able to find the uid of a manager with a single query. Right now, I have to do it in 2 queries:
$ ldapsearch -h ldap.example.com -p 389 -b dc=example,dc=com uid=myuid manager
dn: cn=mycn,L=AMER,DC=EXAMPLE,DC=COM
manager: cn=mymanagercn,L=AMER,DC=EXAMPLE,DC=COM
Parse out the cn value 'mymanagercn', then run another query:
$ ldapsearch -h ldap.example.com -p 389 -b dc=example,dc=com cn=mymanagercn uid
dn: cn=mymanagercn,L=AMER,DC=EXAMPLE,DC=COM
uid: mymanageruid
Is there a way to do this with 1 query? Bonus points if you can do this using the Net::LDAP Perl modules!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不会。但是,使用正确设计的 API 应该可以在一个连接中完成此任务,但不能在一个搜索请求中完成。如果您使用 UnboundID Directory Server,您可以使用 服务器 SDK 在搜索结果返回给客户端之前更改搜索结果的内容。该插件可以执行经理条目的搜索并将结果附加到搜索结果中。
No. However, it should be possible with a properly designed API to accomplish this task in one connection, but not in one search request. If you are using the UnboundID Directory Server you can write a plugin using the Server SDK to alter the contents of the search result before it is returned to the client. The plugin could perform the search for the manager entry and append the results to the search result.
第二次搜索实际上可以是查找,因为您拥有完整的 DN。你不应该只去掉 CN,而应该使用整个东西。
The second search can really be a lookup, as you have the complete DN. You shouldn't just strip out the CN, use the whole thing.