ldap - 查询LDAP以获取用户的角色

标签 ldap openldap rbac

我是 LDAP 新手,我尝试过在 OpenLDAP 上实现 RBAC。我创建了一些用户 (inetOrganizationPerson) 并将它们放入组 (groupOfNames)。接下来,我创建了一些角色 (organizationalRole) 并将它们与用户组关联 (roleOccupant),而不是直接将它们与用户关联。

My Example Organization Model

我正在尝试编写一个查询,该查询可以为我提供给定用户的角色。它应该确定用户属于哪个组或哪些组以及分配给这些组的角色是什么。

我想我可以通过两个单独的查询来完成:

1)/usr/local/bin/ldapsearch -x -b 'ou=Groups,dc=example,dc=com' -s sub -LLL "(&(objectclass=groupOfNames)(member=uid=anurag, ou=People,dc=example,dc=com))"cn

2)/usr/local/bin/ldapsearch -x -b 'ou=角色,dc=示例,dc=com' -s sub -LLL "(&(objectclass=organizationalRole)(roleOccupant=cn=管理员, ou=组,dc=示例,dc=com))"cn

在第一个查询中,成员“anurag”是参数,它生成“Administrators”作为用户“anurag”所属的组。 第二个查询将“管理员”(来自第一个查询)作为参数,并生成“管理员”作为角色。

但是我正在寻找,如何通过单个查询来实现这一目标,前提是它更有效?更重要的是,它通常是如何完成的?

最佳答案

在 LDAP 中,您要查找的内容是使用 Deref 控件完成的。

https://datatracker.ietf.org/doc/html/draft-masarati-ldap-deref-00

关于ldap - 查询LDAP以获取用户的角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42944483/

相关文章:

Erlang SSHA LDAP

php - yii2 - RBAC - 后端和前端之间共享吗?

kubernetes - 如何防止kubernetes服务账号被滥用

转到 LDAP 搜索 ContextCSN

kubernetes - K8s 中的受限用户需要 CRD 的访问权限

c# - 从 Active Directory 查询用户的组成员身份

ldap - phpLDAPadmin 中的 gidNumber 是什么意思?

java - 使用 Activity 目录的 Spring Security 身份验证失败

linux - LDAP:slapd 和 openldap

authentication - OpenLDAP 中的嵌套 posixgroup