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

Tomcat et TomEE Java Discussion :

Authentification via Tomcat qui marche trop bien !?


Sujet :

Tomcat et TomEE Java

  1. #1
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut Authentification via Tomcat qui marche trop bien !?
    Bonjour à toutes et à tous,

    J'ai tenté de mettre en place une authentification à l'ensemble de mon application Web (J2EE Struts) grâce au tutoriel suivant :

    http://beuss.developpez.com/tutoriel...ormulaire/#LVI


    Problème : Je me heurte à ma propre authentification !

    Apache Tomcat/5.5.26 - Rapport d'erreurEtat HTTP 403 - L'accès à la ressource demandée a été interdit

    type Rapport d'état
    message L'accès à la ressource demandée a été interdit
    description L'accès à la ressource demandée (L'accès à la ressource demandée a été interdit) a été interdit.
    Apache Tomcat/5.5.26



    Je vois bien que ça vient du fait des ressources protégées, mais je vois pas comment contourner ce problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
            <!-- Liste des ressources protégées -->
            <web-resource-collection>
                <web-resource-name>Ressources protégées</web-resource-name>
                <url-pattern>*.jsp</url-pattern>
                <url-pattern>*.do</url-pattern>
                <http-method>DELETE</http-method>
                <http-method>GET</http-method>
                <http-method>POST</http-method>
                <http-method>PUT</http-method>
            </web-resource-collection>

    Merci de m'aider.

    Gôm

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Tu as bien ajouté tout ça dans une <security-constraint> avec une contrainte sur le role ? Tu as bien défini la méthode d'authentification requise (basic ou form ou cert)

    Par ce que si tu mets juste une contrainte de sécurité sans role ni méthode d'authentification, la ressource est protégée contre TOUS les accès quels qu'ils soient il me semble, donc en gros tu protège les fichiers auquel l'utilisateur ne doit pas avoir directement accès avec cette méthode.

    On pourrait voir tout ce qui définit l'authentifiation dans ton web.xml ?

    A plus

  3. #3
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Extrait de mon 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
        <security-constraint>
            <display-name>Sécurité sous Tomcat</display-name>
     
            <!-- Liste des ressources protégées -->
            <web-resource-collection>
                <web-resource-name>Ressources protégées</web-resource-name>
                <url-pattern>*.jsp</url-pattern>
                <url-pattern>*.do</url-pattern>
                <http-method>DELETE</http-method>
                <http-method>GET</http-method>
                <http-method>POST</http-method>
                <http-method>PUT</http-method>
            </web-resource-collection>
     
            <!-- Rôle(s) des utilisateurs ayant le droit d y accéder -->
            <auth-constraint>
                <role-name>blabla</role-name>
            </auth-constraint>
        </security-constraint>
     
        <login-config>
            <auth-method>FORM</auth-method>
            <form-login-config>
                <form-login-page>/login.jsp</form-login-page>
                <form-error-page>/erreur.jsp</form-error-page>
            </form-login-config>
        </login-config>
     
        <!-- Rôles utilisés dans l application -->
        <security-role>
            <description>Utilisateurs de l application BLABLA</description>
            <role-name>blabla</role-name>
        </security-role>

  4. #4
    Invité
    Invité(e)
    Par défaut
    Ok donc ca me parait bien, et tes utilisateurs sont définis où ? Ton utilisateur est bien dans le groupe blabla ?

  5. #5
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Citation Envoyé par George7 Voir le message
    Ok donc ca me parait bien, et tes utilisateurs sont définis où ? Ton utilisateur est bien dans le groupe blabla ?
    Oui, d'ailleurs je suis sûr que l'authentification fonctionne bien (trop bien !), car je suis bien obligé de saisir un login et mdp valide pour me voir afficher le message d'erreur copié/collé dans mon 1er post de ce thread !

  6. #6
    Invité
    Invité(e)
    Par défaut
    C'est intéressant... Tu as les droits d'accès en lecture sur les fichiers JSP ? Je pense que oui. As tu une erreur dans logs/catalina.out ? ou alors dans logs/localhost.date.log ?

  7. #7
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Citation Envoyé par George7 Voir le message
    C'est intéressant... Tu as les droits d'accès en lecture sur les fichiers JSP ? Je pense que oui. As tu une erreur dans logs/catalina.out ? ou alors dans logs/localhost.date.log ?
    Absolument rien dans stdout_20090504.log, ni dans stderr_20090504.log, non plus dans localhost.2009-05-04.log et encore moins dans catalina.2009-05-04.log !

  8. #8
    Invité
    Invité(e)
    Par défaut
    Deux mots me viennent à l'esprit : d'oh et rogntudju
    Pourrais tu afficher via un filtre (en console par exemple) le résultat de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public void doFilter(ServletRequest request, ServletResponse response,
                FilterChain filterChain) throws IOException, ServletException {
     
            System.out.println(((HttpServletRequest)request).getRemoteUser());
            System.out.println(((HttpServletRequest)request).isUserInRole("blabla"));
     
            filterChain.doFilter(request, response);
     
    }

  9. #9
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par ghohm Voir le message
    Oui, d'ailleurs je suis sûr que l'authentification fonctionne bien (trop bien !), car je suis bien obligé de saisir un login et mdp valide pour me voir afficher le message d'erreur copié/collé dans mon 1er post de ce thread !
    Ca prouve que t'es authentifié correctement le message d'erreur (sinon tu aurais eu un 401 authentification required ou éventuellement un 5xx internal server error en cas de problème).

    Mais le message dit aussi que t'as pas les droit, donc l'utilisateur en question n'est pas dans le rol blabla. Comment as-tu configuré les roles sur ton tomcat?

  10. #10
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2003
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2003
    Messages : 921
    Par défaut
    Oups ...

    Faute de frappe dans le nom de mon rôle dans le "tomcat-users.xml" !!!

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
      <role rolename="manager"/>
      <role rolename="appli1"/>
      <role rolename="admin"/>
      <role rolename="appli2"/>
      <user username="admin" password="mdp1" roles="admin,manager,appli1,appli2"/>
      <user username="utilisateur" password="mdp2" roles="appli1, applii2"/>
    </tomcat-users>

    Merci pour tout !

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

Discussions similaires

  1. URL rewriting qui marche trop bien
    Par sam1212 dans le forum Apache
    Réponses: 14
    Dernier message: 16/08/2011, 02h11
  2. fonction drawrect qui marche pas bien..
    Par pikaTuX dans le forum Objective-C
    Réponses: 2
    Dernier message: 22/07/2010, 13h07
  3. Authentification via Tomcat
    Par ghohm dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 06/05/2009, 14h14
  4. Class herite de JButton qui marche pas bien
    Par MinsK dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 13/03/2008, 17h57
  5. envoi en tcp qui marche pas bien
    Par zarbiman dans le forum Développement
    Réponses: 2
    Dernier message: 18/12/2007, 00h21

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