首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-auth-ldap AUTH_LDAP_FIND_GROUPS_PERMS不工作

django-auth-ldap AUTH_LDAP_FIND_GROUPS_PERMS不工作
EN

Stack Overflow用户
提问于 2017-05-09 03:55:09
回答 2查看 1.4K关注 0票数 1

我正在运行Django 1.8.18和django-auth-ldap 1.2.11,对Active进行身份验证。

但是,当我启用AUTH_LDAP_FIND_GROUPS_PERMS时,它似乎什么也不做。我以前尝试过AUTH_LDAP_MIRROR_GROUPS (它没有任何问题),并找到了创建的所有用户组。唯一的小问题是,它还删除了用户拥有的任何本地组成员资格。

无论如何,在AUTH_LDAP_MIRROR_GROUPS自动创建组之后,我希望AUTH_LDAP_FIND_GROUPS_PERMS会在下一次登录时自动将用户添加到同一个组。然而,这种情况并没有发生。配置中唯一的变化是这两行。AUTH_LDAP_GROUP_TYPE设置为NestedActiveDirectoryGroupType()

您知道为什么用户没有被添加到具有匹配名称的组中吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-12 05:15:22

事实证明,AUTH_LDAP_FIND_GROUPS_PERMS实际上并没有将用户添加到一个组中,但实际上是将他们添加到其中,以确保他们的权限响应就像他们在与名称匹配的组中一样。

票数 3
EN

Stack Overflow用户

发布于 2017-05-11 14:25:00

我怀疑这是你正在使用的AUTH_LDAP_GROUP_TYPE。我也在使用这个库,并让它同步组/成员。这是我为库设置的全部转储:

代码语言:javascript
复制
AUTH_LDAP_START_TLS = True
AUTH_LDAP_SERVER_URI = 'xxxx'
AUTH_LDAP_GLOBAL_OPTIONS = {
    ldap.OPT_X_TLS_REQUIRE_CERT: ldap.OPT_X_TLS_NEVER
}
AUTH_LDAP_BIND_DN = 'yyyy'
AUTH_LDAP_BIND_PASSWORD = 'zzzz'
AUTH_LDAP_USER_SEARCH = LDAPSearchUnion(
    LDAPSearch(
        'OU=OurCorp,DC=foo,DC=bar,DC=com',
        ldap.SCOPE_SUBTREE,
        filterstr='(uid=%(user)s)'
    ),
)

AUTH_LDAP_USER_ATTR_MAP = {
    "first_name": "givenName",
    "last_name": "sn",
    "email": "mail",
}

AUTH_LDAP_GROUP_TYPE = ActiveDirectoryGroupType()
AUTH_LDAP_GROUP_SEARCH = LDAPSearch(
    'OU=Security Groups,OU=Users and Groups,OU=OurCorp,DC=foo,DC=bar,DC=com',
    ldap.SCOPE_SUBTREE,
    '(objectClass=group)'
)
AUTH_LDAP_MIRROR_GROUPS = True

AUTH_LDAP_USER_FLAGS_BY_GROUP = {
    'is_staff': [  # Allow login to the Django admin site
        'CN=Our-Staff-Group,OU=Security Groups,OU=Users and Groups,OU=OurCorp,DC=foo,DC=bar,DC=com',
    ],
    'is_superuser': [  # Implicitly grant ALL permissions to members of these groups
        'CN=Our-Superuser-Group,OU=Security Groups,OU=Users and Groups,OU=OurCorp,DC=foo,DC=bar,DC=com'
    ],
}

正如我提到的,我认为AUTH_LDAP_GROUP_TYPE可能是您的问题,但这可能取决于您自己的AD设置。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43860814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档