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 :

Gestion de droits


Sujet :

Spring Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut Gestion de droits
    Bonjour a tous

    Voila j'utilise Spring security / LDAP pour la gestion de l'authentification et des autorisations d'accès à mon application web. Tout se passe bien concernant l'authentification (j'utilise les exemples fournis sur le site officiel donc ça roule).

    Je m'authentifie, je récupère mon contexte avec login, password, role (ROLE_USER ou ROLE_ADMIN suivant l'utilisateur). Tout ça issu de mon annuaire LDAP.

    Mon souci est que je voudrais une gestion bien plus fine des droits. Par exemple, dans mon appli un user peut avoir le droit de modifier un element X. Quelle est la marche à suivre pour pouvoir indiquer à ma méthode java qu'il a bien l'autorisation de faire ceci (car il possède bien le droit dans l'annuaire LDAP)? UserDetails peut-il m'etre utile ?

  2. #2
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 36
    Par défaut
    Tu peux utiliser l'annotation @Secured({"ROLE_USER"}) sur une interface, une classe, une méthode pour indiquer à Spring quel niveau d'accès est nécessaire.

    Pour activer les annotations de ce type tu dois l'indiquer dans ton fichier de configuration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <global-method-security secured-annotations="enabled" />
    Par contre c'est toujours en fonction d'un rôle, je sais pas si c'est possible en fonction d'autre chose.

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 747
    Par défaut
    Ok Mr Vincent, merci pour ta reponse. C'est bien ce qu'il me semblait.

    Cette annotation s'applique bien sur un role (un groupe d'utilisateurs qui ont les mêmes droits finalement) mais ce que j'aurai voulu faire était de l'appliquer en fonction du fait que l'utilisateur ait un droit qui l'y autorise ou non ... et je me demande bien si spring security permet ce genre de chose avec LDAP.

    En gros, dire a Spring security "pour l'utilisateur du contexte en cours, vérifier s'il a un certain droit et si oui, executer la methode".

  4. #4
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Salut,
    Ce que tu décris est parfaitement faisable via un voter + la notion de grants.
    Un voter intercepte l'appel des méthode sécurisées en prenant en pramètre l'utilsiateur connecté, les grants dont il dipose et la méthode + arguments qui sera invoquée. A partir de là, tu décide si oui ou non (ou si t'abstiens) ce tratement peut procéder.

    Après, pour ton cas (LDAP), je sais pas comment ça passe la création de l'objet UserDetails car c'est cet objet qui doit contenir les grants de l'utilsiateur.

Discussions similaires

  1. gestion des droits d'accès : pg_hda.conf et autres
    Par Pigoulou dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 12/02/2005, 07h57
  2. Idées pour une gestion de droits d'accès a des Forms ?
    Par sfxElrick dans le forum Composants VCL
    Réponses: 17
    Dernier message: 26/01/2005, 16h00
  3. Gestion des droits
    Par totop dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 22/01/2005, 09h49
  4. Gestion des droits d'accès
    Par soulryo dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 12/01/2005, 10h50
  5. Gestion De Droits Grant Revoke
    Par donde dans le forum Informix
    Réponses: 5
    Dernier message: 15/01/2003, 11h59

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