LDAP 为用户分配角色的最佳方式

标签 ldap openldap

他们是否有设置用户角色和权限的标准方法。

选项 1: 创建组并在其中分配成员。

我的人员 dn 如下。

  DN: uid=55e44a75e4b0f16711714165,ou=people,dc=cofinding,dc=com 

我为角色创建了群组。并在其中分配成员

DN: cn=ADMIN,ou=roles,dc=cofinding,dc=com  

并在此处添加了具有 ADMIN 角色的成员。添加了近 5 万名 ADMIn 角色成员。

选项 2:在人员中添加自定义值(value)角色。我将 dn 创建为 user_role

DN: uid=55e44a75e4b0f16711714165,ou=people,dc=cofinding,dc=com

在人员中我们可以添加 user_role=ADMIN,MASTER_ADMIN

他们还有其他选择或标准做法吗?因为角色在任何身份验证过程中都非常重要。

最佳答案

首先:角色与身份验证无关,它们用于授权流程。在身份验证时,系统会根据一组凭据来验证用户是谁;一旦建立,就会在授权过程中咨询角色,以确定是否应授予用户访问某些特定资源的权限。

回答您关于角色的问题:两种方式都可以。第一种方法可能是最常见的方法(并且最符合 LDAP 中事物通常的结构方式。请查看用于表示您的角色的 groupOfNames 和 groupOfUniqueNames 对象类)。根据用例,我认为后者在许多情况下可能更实用,但您需要考虑到它并不完全是标准的“LDAP 方式”。

关于LDAP 为用户分配角色的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37915255/

相关文章:

c# - 在 C# 中为用户创建 Exchange 邮箱

java - LDAP 搜索中的 NPE

java - digest-uri 与为此服务器注册的任何 LDAP SPN 都不匹配

java - OpenLDAP - 获取密码属性

database - LDAP 和数据库同步

reactjs - 使用 .NET Core Web API 和 React 进行 Active Directory 身份验证

java - 从 java 更新 ldap

linux - RHEL6 LDAP 客户端未列出所有组

PHP - 从 ldap_connect() 捕获超时异常

c - C/Go 中的 LDAP : Error code 53 "Server is unwilling to perfom" when trying to set unicodePwd