linux - 使用 LDAP 中的附加属性管理 POSIX 组成员身份的最佳实践

标签 linux ldap openldap samba

我们目前正在使用随 Debian 分发的 OpenLDAP 2.3.31 在 LDAP 中为我们的学习协会设计一个新的成员管理。其中一项要求是我们需要记录哪些成员在委员会中。为此,我们创建了一个名为 x-FMFCommittee 的 organizationalUnit 子类和一个名为 x-FMFCommitteeRole 的 organizationalRole 子类。现在,与委员会关联的所有角色(例如总裁、财务主管等)都位于委员会条目的子树中。然后,承担此角色的成员的 DN 将设置为 x-FMFCommitteeRole 上的 roleOccupant 属性。这工作得很好。

但是,我们还允许我们的用户访问 Linux shell 和 Windows 桌面(使用 Samba),为此我们还想管理 POSIX 组成员资格。为此,我们要为其执行此操作的每个委员会也都有对象类 posixGroup(根据 RFC2307)。为了获得组成员和与用户关联的组,每当成员在委员会中担任角色时,我们需要在委员会条目上设置 memberUid 属性。

我们已经尝试使用 dynlist 覆盖来执行此操作,但是在执行反向组查找时失败了。我们现在看到的唯一选择是全部手动执行此操作,但我们真的希望将其自动化,以便将来在我们协会的管理员经常更换时提供更轻松的维护。

有没有人遇到过类似的情况,或者有人知道解决这个问题的方法吗?

最佳答案

我建议您简单地摆脱第一个实现并只使用 posixGroup。数据库非规范化始终是一个坏主意,无论采取何种形式。

而且您不需要为这个问题扩展架构。如果您想区分这些委员会,只需将它们放在自己的子树中即可。

但我想更详细地了解为什么使用动态列表不起作用。您可以使用 memberOf 覆盖,而不必进行反向查找。

关于linux - 使用 LDAP 中的附加属性管理 POSIX 组成员身份的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21257513/

相关文章:

linux - 尝试从 linux ldapsearch 命令获取 memberof 详细信息

c++ - G++ 命令行使用线程标记,linux makefile 不使用

xml - 什么是/usr/share/gdb/syscalls 用于

java - apacheDS 无法创建新条目

Java Tomcat LDAP 身份验证

Python ldap3 LDAPSocketOpenError 无法发送消息,套接字未打开

linux - Linux 在哪里设置其内核和用户空间段选择器值?

linux - CMake错误 "attempted to write a file ... into a source directory."

java - 使用 LdapExtLoginModule 的连接超时

docker run 后 docker ps 为空