4

我只想对特定组中的用户进行身份验证。

在我的测试中,我有两个用户:

  • 一个用户在第一组
  • 其他在第二组

我有一个活动目录:

CN=Users,DC=XXXX,DC=com
  ---usrA      
  ---usrB      
  ---group1      
  ---group2

usrA在 中group1usrB在 中group2 ,我通过 JBossLdapLoginModule在 中对用户进行身份验证standalone.xml

独立的.xml:

<login-module code="org.jboss.security.auth.spi.LdapLoginModule" flag="sufficient">
  <module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
  <module-option name="java.naming.provider.url" value="ldap://192.168.1.18"/>
  <module-option name="java.naming.allowEmptyPasswords" value="false"/>
  <module-option name="userfilter" value="(&amp;(objectCategory=person)(objectClass=user)(cn={USERNAME})((primaryGroupID=1109)))"/>                       
  <module-option name="principalDNSuffix" value="@XXXX.com"/>                           
  <module-option name="java.naming.security.authentication" value="simple"/>
</login-module>

(primaryGroupID=1109)= group1

结果是:

  • 登录usrA成功
  • usrB成功

所以使用的过滤器无法正常工作或根本没有使用,我没有错误。

我测试了userfilter活动目录中的查询,它很好地返回了我“ usrA

有人知道这个问题吗?任何人都有另一种方式来根据他的组使用用户吗?

4

0 回答 0