仅检索活动目录上的已启用帐户

Sal*_*Sal 2 java active-directory

我想将一个搜索字符串发送到Microsoft的Active Directory(使用Java),该字段说"给我所有拥有启用帐户的用户".

目前,我有:

String search_string ="(&(objectClass = user))";

但是,当然,这只会给我AD的用户.我也想得到那些活跃的人.它在Java中,但我认为它对LDAP不重要.

Sha*_*Fel 9

为了获得启用的用户,您必须检查userAccountControl属性,特别是它的第二位,它对应于ACCOUNTDISABLE标志.MS KB 305144.

这可以使用LDAP过滤器完成,如下所示:

(!(userAccountControl:1.2.840.113556.1.4.803:=2))
Run Code Online (Sandbox Code Playgroud)

查看有关过滤位字段的文章,了解有关此工作的详细信息.

此外,您应该知道计算机帐户是从用户类型继承的,因此您应该在过滤器中添加条件,以将其过滤掉.您还可以检查NORMAL_ACCOUNT标志位(512),以过滤其他类型的帐户.

我不知道活跃用户是什么意思,所以我无法帮助你.