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 :

DatasourceRealm et clés étrangères


Sujet :

Tomcat et TomEE Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Par défaut DatasourceRealm et clés étrangères
    Bonjour,

    Comme vous l'avez compris, je travaille sur l'authentification via un datasource realm.
    En regardant la doc de tomcat (6.0.20) je vous que pour l'implémentation standard du DataSourceRealm il faut avoir (au moins) l'architecture suivante pour les tables:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    create table users (
      user_name         varchar(15) not null primary key,
      user_pass         varchar(15) not null
    );
     
    create table user_roles (
      user_name         varchar(15) not null,
      role_name         varchar(15) not null,
      primary key (user_name, role_name)
    );
    Le problème est que cela est vraiment moche comme structure.
    Je souhaiterais avoir une table "users" une table "roles" et une table de jointure ne contenant que des couples {user_id, role_id}.

    Mais j'ai l'impression que je vais devoir écrire mon propre realm.
    Existe-t-il un autre moyen ?

    Merci d'avance,
    Piopium

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Non, tu peux préciser où tu cherches les différentes informations dans la définition du realm.
    ...
    roleNameCol The name of the column, in the user roles table, that contains the name of a role assigned to this user.

    userCredCol
    The name of the column, in the users table, that contains the password for this user (either in clear text, or digested if the digest attribute is set).

    userNameCol
    The name of the column, in the users and user roles tables, that contains the username of this user.

    userRoleTable The name of the table that contains one row for each role assigned to a particular username. This table must include at least the columns named by the userNameCol and roleNameCol attributes.

    userTable
    The name of the table that contains one row for each username to be recognized by Tomcat. This table must include at least the columns named by the userNameCol and userCredCol attributes.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 152
    Par défaut
    Oui je suis d'accord avec toi mais le problème est la relation user <-> role. Dans le cas que j'ai donné dans le premier post, elle est directement donnée par la table user_role.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par piopium Voir le message
    Oui je suis d'accord avec toi mais le problème est la relation user <-> role. Dans le cas que j'ai donné dans le premier post, elle est directement donnée par la table user_role.
    euh oui, et alors ?

    Tu as une table User, une table Role et une table User_Role.
    On va dire que la clé primaire de User est Login et que la clé primaire de Role est Nom.
    On aura donc la table User_Role avec Login + Nom.
    Dans l'application, c'est ce nom qu'on traite en terme de rôle mais la table Role contient d'autres informations (un libellé peut-être, etc...)

    Jusque là on est d'accord ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Suppression Index, Clés étrangères, etc....
    Par nodule dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/11/2004, 09h42
  2. Contraintes de clés étrangères non respectées
    Par parfait dans le forum Requêtes
    Réponses: 7
    Dernier message: 28/07/2004, 12h48
  3. [EJB2.1 Entity] [BES] Mapping automatique et clés étrangères
    Par Bobby McGee dans le forum Java EE
    Réponses: 3
    Dernier message: 15/10/2003, 10h33
  4. clé primaire composée de 2 clés étrangères
    Par Tigresse dans le forum Installation
    Réponses: 5
    Dernier message: 28/07/2003, 14h38
  5. [Script]prob de clés étrangères
    Par Seb7 dans le forum Langage SQL
    Réponses: 13
    Dernier message: 08/07/2003, 17h37

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