Active directory JasperReports服务器5.2 Active Directory集成

Active directory JasperReports服务器5.2 Active Directory集成,active-directory,jasperserver,Active Directory,Jasperserver,为另一个广告整合问题道歉:) 我在WindowsServer2008R2上重新安装了JasperReportsServer5.2,我正在尝试配置AD身份验证,但登录总是失败 我已将示例applicationContext-externalAuth-LDAP.xml文件复制到WEB-INF文件夹中,并对其进行了自定义: <bean id="ldapAuthenticationProvider" class="org.springframework.security.providers

为另一个广告整合问题道歉:)

我在WindowsServer2008R2上重新安装了JasperReportsServer5.2,我正在尝试配置AD身份验证,但登录总是失败

我已将示例applicationContext-externalAuth-LDAP.xml文件复制到WEB-INF文件夹中,并对其进行了自定义:

    <bean id="ldapAuthenticationProvider" class="org.springframework.security.providers.ldap.LdapAuthenticationProvider">
        <constructor-arg>
            <bean class="org.springframework.security.providers.ldap.authenticator.BindAuthenticator">
                <constructor-arg><ref local="ldapContextSource"/></constructor-arg>
                <property name="userSearch" ref="userSearch"/>
            </bean>
        </constructor-arg>
        <constructor-arg>
            <bean class="org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator">
                <constructor-arg index="0"><ref local="ldapContextSource"/></constructor-arg>
                <constructor-arg index="1"><value></value></constructor-arg>
                <property name="groupRoleAttribute" value="cn"/>
                <property name="groupSearchFilter" value="((member={0})(objectClass=group))"/>
                <property name="searchSubtree" value="true"/>
                <!-- Can setup additional external default roles here  <property name="defaultRole" value="LDAP"/> -->
            </bean>
        </constructor-arg>
    </bean>

    <bean id="userSearch"
          class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
        <constructor-arg index="0">
            <value></value>
        </constructor-arg>
        <constructor-arg index="1">
            <value>((sAMAccountName={0})(objectClass=user))</value>
        </constructor-arg>
        <constructor-arg index="2">
            <ref local="ldapContextSource" />
        </constructor-arg>
        <property name="searchSubtree">
            <value>true</value>
        </property>
    </bean>

    <bean id="ldapContextSource" class="com.jaspersoft.jasperserver.api.security.externalAuth.ldap.JSLdapContextSource">
        <constructor-arg value="ldap://hostname:389/dc=domain,dc=local"/>
        <!-- manager user name and password (may not be needed)  -->
        <property name="userDn" value="Administrator"/>
        <property name="password" value="password"/>
    </bean>
我很感激地收到了任何建议,我已经在externalAuth XML文件中对设置进行了修改,但似乎没有什么对日志或登录失败产生影响


干杯,Matt

一般来说,在AD上进行ldap搜索时,无基础搜索唯一有效的时间是在与GC交谈时

尝试在DC=domain,DC=local的基础上进行搜索,这仍然会搜索整个域

此外,在用户和组搜索中,在第一次(

e、 g



(&;(sAMAccountName={0})(objectClass=user))
我看到的最后一件有助于SpringLDAP的事情是对绑定帐户使用DN

e、 g


HTH

一般来说,在AD上执行ldap搜索时,无基础搜索唯一有效的时间是在与GC对话时

尝试在DC=domain,DC=local的基础上进行搜索,这仍然会搜索整个域

此外,在用户和组搜索中,在第一次(

e、 g



(&;(sAMAccountName={0})(objectClass=user))
我看到的最后一件有助于SpringLDAP的事情是对绑定帐户使用DN

e、 g


HTH

感谢“与”符号提示,在两个操作数之前使用运算符的整个过程有点令人惊讶:)我最终放弃了组搜索,只在需要管理员权限的人登录一次后手动分配管理员角色。这足以满足我的需要,但如果知道我的组搜索失败的地方,那就太好了…感谢符号提示,在两个操作数之前有操作符的整个过程有点困难令人惊讶的是:)我最终放弃了组搜索,只在需要管理员权限的用户登录一次后手动分配管理员角色。这对我的需求来说已经足够好了,但是如果知道我的群组搜索失败了,那就太好了。。。
    2013-09-03 10:12:32,882 DEBUG BaseAuthenticationProcessingFilter,http-bio-80-exec-6:252 - Request is to process authentication
    2013-09-03 10:12:32,884 DEBUG ProviderManager,http-bio-80-exec-6:183 - Authentication attempt using org.springframework.security.providers.ldap.LdapAuthenticationProvider
    2013-09-03 10:12:32,888 DEBUG FilterBasedLdapUserSearch,http-bio-80-exec-6:109 - Searching for user 'username', with user search [ searchFilter: '((sAMAccountName={0})(objectClass=user))', searchBase: '', scope: subtree, searchTimeLimit: 0, derefLinkFlag: false ]
    2013-09-03 10:12:32,905 DEBUG SpringSecurityLdapTemplate,http-bio-80-exec-6:197 - Searching for entry in under DN 'dc=domain,dc=local', base = '', filter = '((sAMAccountName={0})(objectClass=user))'
    2013-09-03 10:12:32,933 DEBUG ProviderManager,http-bio-80-exec-6:183 - Authentication attempt using com.jaspersoft.jasperserver.api.security.internalAuth.InternalDaoAuthenticationProvider
    2013-09-03 10:12:32,940  WARN LoggerListener,http-bio-80-exec-6:60 - Authentication event AuthenticationFailureBadCredentialsEvent: username; details: org.springframework.security.ui.WebAuthenticationDetails@21a2c: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: F8EA36A4CF952E3DE41E7211B4EB529D; exception: Bad credentials
    2013-09-03 10:12:32,941 DEBUG BaseAuthenticationProcessingFilter,http-bio-80-exec-6:406 - Updated SecurityContextHolder to contain null Authentication
    2013-09-03 10:12:32,941 DEBUG BaseAuthenticationProcessingFilter,http-bio-80-exec-6:412 - Authentication request failed: org.springframework.security.BadCredentialsException: Bad credentials
    2013-09-03 10:12:32,943 DEBUG HttpSessionContextIntegrationFilter,http-bio-80-exec-6:255 - SecurityContextHolder now cleared, as request processing completed
<property name="groupSearchFilter" value="(&amp;(member={0})(objectClass=group))"/>
<constructor-arg index="1">
    <value>(&amp;(sAMAccountName={0})(objectClass=user))</value>
</constructor-arg>