Назад | Перейти на главную страницу

LDAP Auth с проверкой принадлежности пользователя к группе?

Вот проблема, которую я хочу решить.

У нас есть ртутный сервер управления версиями (Linux + Apache + mod_auth), который я хочу настроить так, чтобы он работал с LDAP (сейчас это базовая авторизация на apache с паролями, хранящимися в файлах .htpasswd). Я помещаю разработчиков в OU с именем «Developers»

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

проблема в том, что у нас есть разные проекты, и некоторые из них должны ограничивать доступ только определенным разработчикам. Я могу поместить внутри разработчиков разные подразделения, но у меня не может быть одна и та же учетная запись пользователя для нескольких подразделений. В то же время я не люблю иметь несколько учетных записей на пользователя (в будущем будет сложнее управлять)

ТАК я думаю, можно ли авторизоваться против OU и определенной логической группы?

Например, я создал подразделение «Разработчики», а затем создал несколько групп Windows, таких как ProjectA, projectB, projectC, и назначил разработчиков в эти группы.

Можно ли настроить LDAP base dn, чтобы он тоже искал группу?

спасибо дмитрий

Итак, у нас есть пользователи в 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>