IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

Authentication Provider jamais appelé [Security]


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 50
    Par défaut Authentication Provider jamais appelé
    Bonjour à tous,
    je dispose d'une application web et aurais aimé mettre en place Spring security 3 pour sécuriser l'accès à certaines pages.
    Mon application utilise Spring MVC 3 pour son implémentation simple de REST.

    Lorsque j'essaie d'accéder à une URL sécurisée, je suis bien redirigé vers ma page de Login.
    Lorsque j'essaie de m'authentifier, mon authenticationProvider n'est pas appelé.
    D'après le message d'erreur, on dirait que c'est mon filtre pour REST qui a l'avantage.

    Voici mon message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PageNotFound - No mapping found for HTTP request with URI [/monappli/j_spring_security_check] in DispatcherServlet with name 'spring'
    Voici ma configuration web.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_4.xsd"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
                                 http://java.sun.com/xml/ns/javaee/web-app_2_4.xsd"
        id="Chefcuisto" version="2.4">
        <context-param>
            <param-name>log4jConfigLocation</param-name>
            <param-value>classpath:log4j.xml</param-value>
        </context-param>
        <context-param>
            <param-name>log4jRefreshInterval</param-name>
            <param-value>10000</param-value>
        </context-param>
        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/webappContext.xml</param-value>
        </context-param>
     
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
     
        <listener>
            <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
        </listener>
     
        <filter>
            <filter-name>encoding-filter</filter-name>
            <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
            <init-param>
                <param-name>encoding</param-name>
                <param-value>UTF-8</param-value>
            </init-param>
        </filter>
        <filter-mapping>
            <filter-name>encoding-filter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
     
        <servlet>
            <servlet-name>spring</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>/WEB-INF/spring/webappContext.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
     
        <servlet-mapping>
            <servlet-name>spring</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
     
        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>/static/*</url-pattern>
        </servlet-mapping>
     
        <filter>
            <filter-name>httpMethodFilter</filter-name>
            <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>httpMethodFilter</filter-name>
            <servlet-name>spring</servlet-name>
        </filter-mapping>
     
        <filter>
            <filter-name>springSecurityFilterChain</filter-name>
            <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>springSecurityFilterChain</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
     
        <session-config>
            <session-timeout>30</session-timeout>
        </session-config>
     
        <welcome-file-list>
            <welcome-file>redirect.jsp</welcome-file>
        </welcome-file-list>
    </web-app>
    J'ai mon fichier de Conf Spring webappContext.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns:p="http://www.springframework.org/schema/p"
    	xmlns:context="http://www.springframework.org/schema/context"
    	xmlns:mvc="http://www.springframework.org/schema/mvc"
    	xmlns:security="http://www.springframework.org/schema/security"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans
    						http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    						http://www.springframework.org/schema/context 
    						http://www.springframework.org/schema/context/spring-context-3.0.xsd
    						http://www.springframework.org/schema/mvc
    						http://www.springframework.org/schema/mvc/spring-mvc.xsd"
    						http://www.springframework.org/schema/security 
    						http://www.springframework.org/schema/security/spring-security-3.0.xsd">
     
    	<context:component-scan base-package="fr.chefcuisto.web" />
    	<mvc:annotation-driven />
     
        <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"></bean>
     
       <security:global-method-security pre-post-annotations="enabled" />
     
        <security:http auto-config="true">
            <security:intercept-url pattern="/static/**" filters="none" />   
            <!-- 
            <security:intercept-url pattern="/mon-compte/connexion" filters="none" />
            <security:intercept-url pattern="/mon-compte/inscription" filters="none" />
             -->
            <security:intercept-url pattern="/admin/*" access="ROLE_ADMIN" />
            <security:intercept-url pattern="/*" filters="none" />
            <security:form-login login-page="/mon-compte/connexion" default-target-url="/" login-processing-url="/j_spring_security_check" />
            <security:logout logout-url="/j_spring_security_logout" logout-success-url="/" />       
            <security:session-management invalid-session-url="/mon-compte/connexion" />
        </security:http>
     
        <security:authentication-manager>
            <security:authentication-provider ref="authProvider" />
        </security:authentication-manager>
     
     
        <bean id="authProvider" class="fr.monappli.web.security.CustomAuthenticationProvider" />
     
    </beans>
    Est-ce que quelqu'un a déjà rencontré mon souci, car j'ai beau chercher sur le net je ne trouve rien...
    D'avance merci pour votre aide !

  2. #2
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 50
    Par défaut
    OK désolé pour le spam j'ai trouvé mon erreur...
    J'avais mal compris comment fonctionne l'attribut filters pour la configuration spring.

    En conservant uniquement cette configuration, ça fonctionne parfaitement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        <security:http auto-config="true">
            <!-- <security:intercept-url pattern="/static/**" filters="none" /> -->   
            <!-- 
            <security:intercept-url pattern="/mon-compte/connexion" filters="none" />
            <security:intercept-url pattern="/mon-compte/inscription" filters="none" />
             -->
            <security:intercept-url pattern="/recettes/ajouter" access="ROLE_ADMIN" />
            <!-- <security:intercept-url pattern="/*" filters="none" />  -->
            <security:form-login login-page="/mon-compte/connexion" default-target-url="/" login-processing-url="/j_spring_security_check" authentication-failure-url="/mon-compte/connexion?erreur"/>
            <security:logout logout-url="/j_spring_security_logout" logout-success-url="/" />       
            <security:session-management invalid-session-url="/mon-compte/connexion" />
        </security:http>
    Encore désolé...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Spécialisation template qui n'est jamais appelée
    Par coyotte507 dans le forum Langage
    Réponses: 4
    Dernier message: 02/05/2008, 12h39
  2. [JSF] Action methods jamais appelées
    Par mauvais_karma dans le forum JSF
    Réponses: 4
    Dernier message: 15/05/2007, 16h05
  3. Réponses: 7
    Dernier message: 19/04/2007, 18h54
  4. methode paint jamais appeller.
    Par Blo0d4x3 dans le forum 2D
    Réponses: 9
    Dernier message: 22/01/2006, 22h44
  5. [ Struts ] Erreur : l'action n'est jamais appelé
    Par romain3395 dans le forum Struts 1
    Réponses: 3
    Dernier message: 25/06/2004, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo