Fra*_*ori 5 active-directory ldap
我正在尝试通过 LDAP 查询在 Active Directory 中查找用户。基本上我正在以这种方式搜索用户:
Search DN: dc=mydomain, dc=com
Filter: (sAMAccountName=USER) where USER is replaced with the provided username.
Run Code Online (Sandbox Code Playgroud)
现在,如果 USER 只是没有域的用户名(例如“Joe”),这可以正常工作。但是,我以(域\用户名,例如“myDomain\Joe”)的形式收到它们,显然搜索失败。
我看到两种方式:
我不是 LDAP 专家,我什至不知道是否可以在搜索过滤器中使用正则表达式。
有谁知道这是否可能以及如何实现?
PS 我无法预处理用户名以剥离域。这是无法更改的,因为它是大型系统的一部分。
不可能使用不同的过滤器。用户帐户没有域名属性,因此无法以域名作为参数构造查询。
在 Active Directory 中,LDAP 服务仅包含来自域的信息,DC 是该域的控制器。如果您与森林中的其他域有信任关系,为了获取有关来自不同域的用户的信息,您应该与该域的 LDAP 服务联系。
正确的解决方案:从搜索过滤器中丢弃域名。属性 sAMAccountName 在域中是唯一的。