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 :

Autorisation avec java.security.acl


Sujet :

Développement Web en Java

  1. #1
    Membre éclairé Avatar de scandinave
    Homme Profil pro
    Développeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par défaut Autorisation avec java.security.acl
    Bonjour,
    Dans mon projet actuel, je voudrais implementer une gestion des droits par user/groupe. Pour cela je voudrais utiliser le package java.security.acl.

    Le soucis , c'est que je ne voit pas bien quelle table créer pour enregistrer toute les permissions ni quel structure je peux construire pour l’implémenter facilement.

    J'utilise un framework perso implémentant le pattern frontController. et hibernate pour la partie donnée.

    En gros ce que je voudrais c'est qu'a chaque action d'un contrôleur , soit vérifier si l'utilisateur a accès ou pas à cette action.

    toute suggestion est la bienvenue . merci

  2. #2
    Traductrice
    Avatar de Mishulyna
    Femme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    Bonjour,

    Ce que moi j'ai fait (sans utiliser le package mentionné): j'ai une table "role" (colonnes Id et Nom mais tu peux en ajouter si besoin). Chaque utilisateur a une "fkRole" (et chaque role, une Liste d'utilisateurs). Lors de l'authentification, l'application vérifie en plus du login et mot de passe le role de l'utilisateur et lui affiche la page .xhtml correspondante.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 132
    Par défaut
    Bonsoir,

    Tu peux regarder (si ce n'est déjà fait) du côté de JAAS voire Spring Security pour des idées d'implémentation.

  4. #4
    Membre éclairé Avatar de scandinave
    Homme Profil pro
    Développeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par défaut
    En me creusant un peu la cervelle , j'ai opté pour une table user , group et permission. Et une table permission_user et permission_group

    Un user peut avoir un ou plusieurs group et une ou plusieurs permissions
    Un groupe une ou plusieurs permissions.

    Pour la verification, je récupère les permissions du user en session lors de la connexion. Ensuite le dispatcher au moment de l'aiguillage de la requête va récupérer les annotations de la méthode appelée.

    Si l annotation @secured est trouvée, il regarde la value de cette annotation et la compare avec la liste des permissions en session.

    Si une correspondance est trouvée le dispatcher redirige le user vers sa destination sinon il le redirige vers une page d erreur forbidden.

    De cette maniere je n'ai plus qu'a placer une annotation @secured(value=nomDeLaPermission) devant les methodes que je veux controller.

    En esperant aider des gens avec mon retour.

Discussions similaires

  1. Réponses: 0
    Dernier message: 23/08/2012, 12h32
  2. meilleure base de données avec java
    Par mial dans le forum JDBC
    Réponses: 11
    Dernier message: 10/11/2010, 11h49
  3. Réponses: 5
    Dernier message: 05/01/2007, 13h27
  4. Réponses: 3
    Dernier message: 27/01/2004, 16h15
  5. [JNDI] Equivalent avec Java Web Start ?
    Par cameleon2002 dans le forum Java EE
    Réponses: 8
    Dernier message: 18/09/2003, 18h55

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