LDAP 身份验证是否检查用户所属的组?

LDAP 身份验证是否检查用户所属的组?

这是我想要解决的问题。

我们有一个 mercurial 源代码控制服务器 (Linux + Apache + mod_auth),我想配置它以便它能够针对 LDAP 工作(目前它是 apache 上的基本授权,密码存储在 .htpasswd 文件中)。我将开发人员放在名为“Developers”的 OU 中

'OU=Developers,DC=us,DC=domain,DC=com'

问题是我们有多个项目,其中一些项目应该只限制某些开发人员的访问权限。我可以在开发人员中放置不同的 OU,但我不能让同一个用户帐户出现在多个 OU 中。同时我不喜欢每个用户有多个帐户(将来更难管理)

所以我在想是否可以针对 OU 和某些逻辑组进行授权?

就像我创建了 OU“开发人员”,然后创建了几个 Windows 组 - 例如 ProjectA、projectB、projectC,并将开发人员分配到这些组。

是否可以配置 LDAP 基本 DN,以便它也能查找组?

谢谢,德米特里

答案1

因此,我们在 OU 中拥有用户OU=Developers,DC=us,DC=domain,DC=com,然后某些位置也需要具有特定的组成员身份 - 类似于CN=ProjectA,OU=Developers,DC=us,DC=domain,DC=com一个组。

类似这样的事情应该可以解决问题。

<Location />
    AuthType basic
    AuthName "user message on login"
    AuthBasicProvider ldap
    AuthzLDAPAuthoritative on
    # This is your LDAP server configuration - if you can, use SSL (which requires
    # configuring either an LDAPTrustedGlobalCert or to set LDAPVerifyServerCert Off)
    # The search base DN is included here.
    AuthLDAPURL "ldaps://ldap-server.example.com:636/OU=Developers,DC=us,DC=domain,DC=com?cn"
    # This is the user account that will be used by Apache to bind to LDAP for auth checking.
    AuthLDAPBindDN "CN=ldapserviceaccount,OU=Developers,DC=us,DC=domain,DC=com"
    AuthLDAPBindPassword "passwordhere"
    # For just the / location, we'll force a valid login (any user account in the OU)
    Require valid-user
</Location>
<Location /project-a>
    # And here we'll configure a specific group for this location
    Require ldap-group CN=ProjectA,OU=Developers,DC=us,DC=domain,DC=com
</Location>

相关内容