多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 限制访问 最简单的使用组是限制允许登录的用户。如果设置了`AUTH_LDAP_REQUIRE_GROUP`,那么只有属于该组成员的用户才能成功进行身份验证。` AUTH_LDAP_DENY_GROUP`是相反的:如果有,该组的成员将被拒绝。 ~~~ AUTH_LDAP_REQUIRE_GROUP = "cn=enabled,ou=groups,dc=example,dc=com" AUTH_LDAP_DENY_GROUP = "cn=disabled,ou=groups,dc=example,dc=com" ~~~ 但是,这两个设置本身可能不足以满足您的需求。 在这种情况下,您可以使用`LDAPGroupQuery`对象对用户组执行更复杂的匹配。 例如: ~~~ from django_auth_ldap.config import LDAPGroupQuery AUTH_LDAP_REQUIRE_GROUP = ( ( LDAPGroupQuery("cn=enabled,ou=groups,dc=example,dc=com") | LDAPGroupQuery("cn=also_enabled,ou=groups,dc=example,dc=com") ) & ~LDAPGroupQuery("cn=disabled,ou=groups,dc=example,dc=com") ) ~~~ 上面这个例子的几个特征很重要。 首先,在一个设置中处理`AUTH_LDAP_REQUIRE_GROUP`和`AUTH_LDAP_DENY_GROUP`的情况。 其次,您可以在这些查询中使用三个运算符:`&, |, 和 ~: and, or, 和 not` 配置组时,可以始终从`user.ldap_user.group_dns`或`user.ldap_user.group_names`获取用户组的列表。 接下来的两节将介绍更多高级组的使用。