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

Développement Web en Java Discussion :

[Authentification] Une question d'architecture


Sujet :

Développement Web en Java

  1. #1
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut [Authentification] Une question d'architecture
    Bonjour,

    Je suis entrain de travailler sur une application qui est structurée comme suit :
    - Des pages JSP pour le client
    - Apache -> (mod_jk) -> Tomcat qui hébege les servlets
    - Des EJB avec JOnAS

    Pour résumer, l'application offre certains services qui requirent que les clients s'authentifient pour gérer certaines actions. L'authentification se fait par formulaire.

    Il y'a quelques heures, je ne connaissais rien aux JSP, maintenant c'est un peu différent Donc, j'ai lu quelques tutos qui parlent de l'authentification avec JSP mais cà ne rentre pas vraiment dans ce que je cherche à faire.

    Les tutos utilisent j_security_check, j_username et j_password comme des champs du formulaire et configurent un Real au niveau de Tomcat. En gros, apparemment, la vérification d'identité se fait au niveau de Tomcat, ce qui ne m'arrange pas.

    J'avais prévu un schéma comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    Client -> Servlet -> EJB Facade (avec Etat) -> EJBs Entités -> BD
                                           ^
                                           |  (C'est ici qu'on vas sauvegarder l'info comme  quoi le client est authentifié ou non)
    ---------------------------------------
    Donc, c'est au niveau de mon EJB Entité qu'on vérifie si l'utilisateur a fournit un couple utilisateur/mot de passe correct.

    Maintenant, la question

    Je dois tout gérer à la main ou est-ce qu'il existe un moyen de tirer parti du mécanisme de j_security_check, notamment pour sécuriser mes pages et gérer l'autorisation à certaines pages(config dans server.xml qui redirige un client vers la page de login quand il n'est pas authentifié par exemple) ? Est-ce qu'il y'a un framework ou autre (je n'en connais pas beaucoup en Java) me permettant d'avoir l'architecture ci-dessus sans avoir à "réinventer la roue" ? Et enfin, avez-vous un commentaire (constructif) sur cette architecture ?

    Merci

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    ouii
    y'a d'abord JAAS,
    et si tu utilise spring, acegi,
    sinon plus simple, utiliser juste tomcat, et les security constraint...

  3. #3
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    ouii
    y'a d'abord JAAS,
    J'ai fait un tour sur la doc. Je suis finalement tombé sur JAASRealm
    http://tomcat.apache.org/tomcat-5.5-...html#JAASRealm

    qui fait l'authentification au niveau de Tomcat...

    Aurais-tu un exemple ou saurais-tu me dire comment intégrer JAAS dans l'architecture que j'ai précisé plus haut ?

    Citation Envoyé par Sniper37 Voir le message
    et si tu utilise spring, acegi,
    Je n'utilise pas cà. "Juste" :
    - JSP
    - Servlets
    - EJBs

    avec Apache comme serveur WEB, Tomcat et JOnAS comme conteneurs.

    Citation Envoyé par Sniper37 Voir le message
    sinon plus simple, utiliser juste tomcat, et les security constraint...
    Comme je l'ai dit plus haut, cà ne semble pas convenir à l'architecture souhaitée.

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    Citation Envoyé par Giovanny Temgoua Voir le message
    Aurais-tu un exemple ou saurais-tu me dire comment intégrer JAAS dans l'architecture que j'ai précisé plus haut ?
    voilà un exemple ici:

    un autre:

    sinon sun tutorials

  5. #5
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    voilà un exemple ici:

    un autre:

    sinon sun tutorials


    Je m'y mets


  6. #6
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Points : 3 938
    Points
    3 938
    Par défaut
    Petit rectificatif: si tu dois utiliser des EJBs, Tomcat n'intègre pas de conteneur EJB pour l'instant à moins que les choses aient changé depuis la version 6, moi j'ai pour habitude de coupler EasyBeans (conteneur EJB) à tomcat pour hébérger les Beans, ou simplement Jonas, mais tomcat je pense pas.

  7. #7
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    Citation Envoyé par DevServlet Voir le message
    Petit rectificatif: si tu dois utiliser des EJBs, Tomcat n'intègre pas de conteneur EJB pour l'instant à moins que les choses aient changé depuis la version 6, moi j'ai pour habitude de coupler EasyBeans (conteneur EJB) à tomcat pour hébérger les Beans, ou simplement Jonas, mais tomcat je pense pas.
    C'est une erreur dans mon texte
    Je pensais à JOnAS...

    Dans mon 3ème post, je me suis un peu rattrapé :

    avec Apache comme serveur WEB, Tomcat et JOnAS comme conteneurs.
    J'ai édité mon premier message en conséquence.

    Merci

Discussions similaires

  1. Une question d'architecture Java EE (EJB3.1).
    Par geforce dans le forum Persistance des données
    Réponses: 2
    Dernier message: 27/09/2012, 10h32
  2. Encore une question sur malloc
    Par IG88 dans le forum C
    Réponses: 5
    Dernier message: 23/06/2004, 15h35
  3. [.NET] Une question technique a propos du mode asynchrone
    Par nicknolt dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 08/06/2004, 10h07
  4. Une question à propos des thread
    Par tscoops dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/11/2003, 14h03

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