Flask LDAP认证:如何获取DN等配置项的值?
Flask-LDAP3-Login LDAP配置项获取指南
获取LDAP_BASE_DN
- PowerShell 命令法:执行以下命令直接获取域的根DN,这就是LDAP_BASE_DN的取值:
示例输出:Get-ADDomain | Select-Object DistinguishedNameDistinguishedName : DC=company,DC=com,取后面的DC=company,DC=com即可。 - 图形化工具法(Windows):打开
ldp.exe,连接LDAP服务器后,查看根节点的“Distinguished Name”字段,就是BASE_DN。
获取LDAP_USER_DN及相关用户配置
LDAP_USER_DN是用户所在容器/组织单元(OU)的DN,用于限定用户搜索范围:
- 先找一个测试用户的完整DN,执行:
示例输出:Get-ADUser -Identity 测试用户名 | Select-Object DistinguishedNameCN=张三,CN=Users,DC=company,DC=com - 从用户DN中提取容器部分,比如上面的
CN=Users,DC=company,DC=com就是用户容器的DN,可直接作为LDAP_USER_DN。如果用户分散在不同OU,也可以直接用LDAP_BASE_DN作为搜索根,配合过滤条件查找用户。
另外,flask-ldap3-login中常用的用户属性配置:
LDAP_USER_RDN_ATTR:通常设为sAMAccountName(AD用户的登录名),可通过Get-ADUser -Identity 用户名 | Select-Object SamAccountName确认。
简化Get-ADUser输出信息
默认命令返回属性太多,可指定只输出需要的字段:
- 查看单个用户的关键属性:
Get-ADUser -Identity 用户名 -Properties DistinguishedName,SamAccountName | Select-Object Name,SamAccountName,DistinguishedName - 批量查看某OU下的用户:
Get-ADUser -Filter * -SearchBase "OU=技术部,DC=company,DC=com" | Select-Object Name,DistinguishedName
内容的提问来源于stack exchange,提问作者pee2pee
相关产品推荐
相关产品推荐

