ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 设置 `AUTH_LDAP_ALWAYS_UPDATE_USER` 默认值:`True` 如果为`True`,则每次用户登录时,`User`对象的字段都将使用`LDAP`目录中的最新值进行更新,否则只有在自动创建`User`对象时才会填充`User`对象。 `AUTH_LDAP_AUTHORIZE_ALL_USERS` 默认:`False` 如果为`True`,则`LDAPBackend`将能够为任何`Django`用户提供权限,而不管后端是否对其进行身份验证。 `AUTH_LDAP_BIND_AS_AUTHENTICATING_USER` 默认:`False` 如果为`True`,那么身份验证会将绑定的`LDAP`连接保留为身份验证用户,而不是在身份验证成功后强制使用默认凭据重新绑定。 如果您没有能够访问用户属性的全局证书,这可能是可取的。 `django-auth-ldap`从不存储用户的密码,所以这只适用于用户身份验证的请求。 因此,这个设置的缺点是,`LDAP`结果可能会根据用户是否在`Django`视图中进行过身份验证而有所不同,这可能会使代码不直接关注身份验证。 `AUTH_LDAP_BIND_DN` 默认值:''(空字符串) 绑定到`LDAP`服务器时使用的可分辨名称(使用`AUTH_LDAP_BIND_PASSWORD`)。 使用空字符串(默认)进行匿名绑定。 为了验证用户,我们将绑定该用户的DN和密码,但对于所有其他`LDAP`操作,我们将在此设置中绑定为`DN`。 例如,如果`AUTH_LDAP_USER_DN_TEMPLATE`未设置,我们将使用它来搜索用户。 如果`AUTH_LDAP_FIND_GROUP_PERMS`为`True`,我们也将使用它来确定组成员资格。 `AUTH_LDAP_BIND_PASSWORD` 默认值:''(空字符串) 与`AUTH_LDAP_BIND_DN`一起使用的密码。 `AUTH_LDAP_CACHE_GROUPS` 默认:`False` 如果为`True`,则`LDAP`组成员身份将使用`Django`的缓存框架进行缓存。 缓存超时可以使用`AUTH_LDAP_GROUP_CACHE_TIMEOUT`进行自定义。 `AUTH_LDAP_CONNECTION_OPTIONS` 默认:{} 通过`LDAPObject.set_option()`传递给每个到`LDAP`服务器的连接的选项字典。 键是`ldap.OPT_ *`常数。 `AUTH_LDAP_DENY_GROUP` 默认:无 一个小组的尊敬的名字; 对于属于该组的任何用户,认证将失败。 `AUTH_LDAP_FIND_GROUP_PERMS` 默认:`False` 如果为`True`,则`LDAPBackend`将根据经过身份验证的用户所属的`LDAP`组提供组权限。 `AUTH_LDAP_GROUP_SEARCH`和`AUTH_LDAP_GROUP_TYPE`也必须设置。 `AUTH_LDAP_GLOBAL_OPTIONS` 默认:{} 要传递给`ldap.set_option()`的选项字典。 键是`ldap.OPT_ *`常数。 **注意** 由于其全球性,该设置忽略了设置前缀。 无论安装了多少个后端,在我们加载`ldap`模块的时候,这个设置都被默认的名字引用一次。 `AUTH_LDAP_GROUP_CACHE_TIMEOUT` 默认:无 如果`AUTH_LDAP_CACHE_GROUPS`为`True`,则这是组成员身份的高速缓存超时。 如果没有,全局缓存超时将被使用。 `AUTH_LDAP_GROUP_SEARCH` 默认:无 查找用户可能属于的所有`LDAP`组的`LDAPSearch`对象。 如果您的配置对`LDAP`组进行任何引用,则必须设置此和`AUTH_LDAP_GROUP_TYPE`。 `AUTH_LDAP_GROUP_TYPE` 默认:无 描述由`AUTH_LDAP_GROUP_SEARCH`返回的组类型的`LDAPGroupType`实例。 `AUTH_LDAP_MIRROR_GROUPS` 默认:无 如果为`True`,则`LDAPBackend`将在`Django`数据库中镜像用户的`LDAP`组成员资格。每当用户进行身份验证时,我们都会将他们的所有`LDAP`组创建为`Django`组,并更新他们的`Django`组成员资格以完全匹配他们的`LDAP`组成员资格。如果`LDAP`服务器具有嵌套组,则`Django`数据库将以扁平表示结束。 这也可以是一个列表或其他的集合名称集合,在这种情况下,我们只会镜像这些组,而不用单独留下。如果设置了`AUTH_LDAP_MIRROR_GROUPS_EXCEPT`,则忽略此项。 `AUTH_LDAP_MIRROR_GROUPS_EXCEPT` 默认:无 如果这不是无,它必须是一个列表或其他集合的名称。这将启用组镜像,除了我们永远不会改变指定组的成员资格。在这种情况下,`AUTH_LDAP_MIRROR_GROUPS`被忽略。 `AUTH_LDAP_PERMIT_EMPTY_PASSWORD` 默认:`False` 如果为`False`(缺省值),则使用空密码进行身份验证将立即失败,而不进行任何`LDAP`通信。这是一个安全的默认设置,因为一些`LDAP`服务器被配置为允许绑定成功,没有密码,可能是在一个较低的访问级别。如果您需要使用此`LDAP`功能,则可以将此设置更改为`True`。 `AUTH_LDAP_REQUIRE_GROUP` 默认:无 一个小组的尊敬的名字; 对于不属于这个组的用户,认证将失败。 这也可以是一个`LDAPGroupQuery`实例。 `AUTH_LDAP_SERVER_URI` 默认:'`ldap:// localhost`' `LDAP`服务器的`URI`。 这可以是您的底层`LDAP`库支持的任何`URI`。 `AUTH_LDAP_START_TLS` 默认:`False` 如果为`True`,则与`LDAP`服务器的每个连接都将调用`start_tls_s()`以通过标准`LDAP`端口启用`TLS`加密。 有许多配置选项可以赋予影响`TLS`连接的`AUTH_LDAP_GLOBAL_OPTIONS`。 例如,`ldap.OPT_X_TLS_REQUIRE_CERT`可以设置为`ldap.OPT_X_TLS_NEVER`来禁用证书验证,也许允许自签名证书。 `AUTH_LDAP_USER_QUERY_FIELD` 默认:无 用户模型中的字段用于查询数据库中的身份验证用户。 如果未设置,则使用模型类的`USERNAME_FIELD`的值。 设置时,用于查询的值通过`AUTH_LDAP_USER_ATTR_MAP`获取。 `AUTH_LDAP_USER_ATTRLIST` 默认:无 要为已认证的用户加载的属性名称列表。 通常情况下,您可以忽略这一点,`LDAP`服务器将发回目录条目的所有属性。 你可能需要重写这个的一个原因是获取操作属性,通常不包括: ~~~ AUTH_LDAP_USER_ATTRLIST = ['*','+'] AUTH_LDAP_USER_ATTR_MAP ~~~ 默认:{} 从用户字段名称到LDAP属性名称的映射。 用户的用户对象将在登录时从其LDAP属性填充。 `AUTH_LDAP_USER_DN_TEMPLATE` 默认:无 一个字符串模板,根据用户名描述任何用户的可分辨名称。 这必须包含占位符%(用户)。 `AUTH_LDAP_USER_FLAGS_BY_GROUP` 默认:{} 从布尔用户字段名称到`LDAP`组的可分辨名称的映射。 根据用户是否是该组的成员,将相应的字段设置为`True`或`False`。 值可以是简单组成员测试的字符串,也可以是更复杂情况下的`LDAPGroupQuery`实例。 `AUTH_LDAP_USER_SEARCH` 默认:无 将在目录中找到用户的`LDAPSearch`对象。 过滤器参数应包含用户名的占位符`%(user)`。 它必须返回一个结果才能成功完成身份验证。