Spring SecurityとLDAP認証

VaclavDedik:

私はLDAP認証を設定しようとしています。これは私のspring-security.xmlファイルです。

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns:beans="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://www.springframework.org/schema/security"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/security
       http://www.springframework.org/schema/security/spring-security.xsd">

    <http auto-config="true" use-expressions="true">
        <intercept-url pattern="/**" access="permitAll()"/>

        <form-login login-processing-url="/static/j_spring_security_check"
                    login-page="/login"
                    authentication-failure-url="/login/error"/>
        <logout logout-url="/logout"/>
    </http>

    <ldap-server id="ldapServer" url="ldap://example.com:PORT/dc=example,dc=com" />

    <authentication-manager>
        <ldap-authentication-provider server-ref="ldapServer" user-dn-pattern="uid={0},ou=people"/>
    </authentication-manager>
</beans:beans>

春のセキュリティドキュメントによると、これは機能するはずですが機能せず、代わりに次の例外がスローされます。

2012-01-24 23:05:35,843 ERROR org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.context.ApplicationContextException: No BaseLdapPathContextSource instances found. Have you added an <ldap-server /> element to your application context? If you have declared an explicit bean, do not use lazy-init
    at org.springframework.security.config.ldap.ContextSourceSettingPostProcessor.postProcessBeanFactory(ContextSourceSettingPostProcessor.java:42)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:646)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:282)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:204)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:866)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:842)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:958)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:536)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1467)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1436)
    at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:673)
    at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:431)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:644)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

私は問題が何であるか理解していません、私はどこにでもldap-server要素を配置しようとしましたが、それはうまくいきませんでした。

何か足りないものはありますか?

VaclavDedik:

私自身の質問に答えてください。依存関係としてspring-security-ldapを追加するのを忘れていたようですが、今は機能しているようです。

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-ldap</artifactId>
    <version>${spring.security.version}</version>
</dependency>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Spring Security Active Directory LDAP認証エラー

分類Dev

同じリソースへのSpring Security OAuth2とLdap認証

分類Dev

複数の認証プロバイダーLDAP認証とJPAをサポートするSpring Security

分類Dev

Spring Securityを使用したADAMに対するLDAPを使用した認証

分類Dev

Spring Security + Auth LDAP:BindRequestとUnbindRequest?

分類Dev

Spring Securityによる認証

分類Dev

Spring Security:認証userdaoがnull

分類Dev

Spring-Securityと基本認証を使用したRESTサービスの認証

分類Dev

Spring BootアプリでのLDAP認証

分類Dev

Spring Security LDAP Configuration

分類Dev

Spring Security + Spring data + MongoDBによる認証

分類Dev

Spring SecurityおよびJavaConfigで認証するときのPartialResultException

分類Dev

Spring Securityカスタム認証-AuthenticationProviderとUserDetailsService

分類Dev

Spring Securityを使用してLDAP経由でディレクトリ(Active Directory)に認証できません

分類Dev

Spring Bootを使用したSpring Security:基本認証とJWTトークン認証を組み合わせる

分類Dev

Spring Security LDAPと記憶する

分類Dev

RestTemplateを使用したSpring Security認証

分類Dev

複数の認証によるSpring Security

分類Dev

Spring Security WebFlux-認証付きの本体

分類Dev

Spring Securityでメモリ内認証とJDBC認証の両方を構成する方法

分類Dev

permitAll()と期限切れの認証トークンを使用したURLのSpring Security

分類Dev

permitAll()と期限切れの認証トークンを使用したURLのSpring Security

分類Dev

Spring Securityのコンテキストでの認証と承認の違いは何ですか?

分類Dev

LDAPとSAML認証

分類Dev

ActiveDirectory認証とLDAP

分類Dev

KerberosおよびLDAPを使用したJava Spring SSO認証

分類Dev

LDAP認証-Springセキュリティ-LdapAuthenticationProvider

分類Dev

Spring Security + Spring Sessionで認証をtrueに設定する

分類Dev

Spring Boot + Spring Security:基本認証フォームを抑制する方法

Related 関連記事

  1. 1

    Spring Security Active Directory LDAP認証エラー

  2. 2

    同じリソースへのSpring Security OAuth2とLdap認証

  3. 3

    複数の認証プロバイダーLDAP認証とJPAをサポートするSpring Security

  4. 4

    Spring Securityを使用したADAMに対するLDAPを使用した認証

  5. 5

    Spring Security + Auth LDAP:BindRequestとUnbindRequest?

  6. 6

    Spring Securityによる認証

  7. 7

    Spring Security:認証userdaoがnull

  8. 8

    Spring-Securityと基本認証を使用したRESTサービスの認証

  9. 9

    Spring BootアプリでのLDAP認証

  10. 10

    Spring Security LDAP Configuration

  11. 11

    Spring Security + Spring data + MongoDBによる認証

  12. 12

    Spring SecurityおよびJavaConfigで認証するときのPartialResultException

  13. 13

    Spring Securityカスタム認証-AuthenticationProviderとUserDetailsService

  14. 14

    Spring Securityを使用してLDAP経由でディレクトリ(Active Directory)に認証できません

  15. 15

    Spring Bootを使用したSpring Security:基本認証とJWTトークン認証を組み合わせる

  16. 16

    Spring Security LDAPと記憶する

  17. 17

    RestTemplateを使用したSpring Security認証

  18. 18

    複数の認証によるSpring Security

  19. 19

    Spring Security WebFlux-認証付きの本体

  20. 20

    Spring Securityでメモリ内認証とJDBC認証の両方を構成する方法

  21. 21

    permitAll()と期限切れの認証トークンを使用したURLのSpring Security

  22. 22

    permitAll()と期限切れの認証トークンを使用したURLのSpring Security

  23. 23

    Spring Securityのコンテキストでの認証と承認の違いは何ですか?

  24. 24

    LDAPとSAML認証

  25. 25

    ActiveDirectory認証とLDAP

  26. 26

    KerberosおよびLDAPを使用したJava Spring SSO認証

  27. 27

    LDAP認証-Springセキュリティ-LdapAuthenticationProvider

  28. 28

    Spring Security + Spring Sessionで認証をtrueに設定する

  29. 29

    Spring Boot + Spring Security:基本認証フォームを抑制する方法

ホットタグ

アーカイブ