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

XMLRAD Discussion :

Accès à l'évènement "OnAuthorize" via les hooks


Sujet :

XMLRAD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Par défaut Accès à l'évènement "OnAuthorize" via les hooks
    Bonjour,

    Comment on fais pour déclarer un hook pour chaque module de l'appli ou mieux pour l'ensemble de l'appli qui va faire le check OnAuthorize directement dans une base de données au lieu des fichiers XML de sécurité de XMLRAD ?

    Merci par avance de vos réponses

    Michel

  2. #2
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    peux-tu expliciter en détail ce que tu veux faire exactement ?

  3. #3
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Par défaut
    oui en gros je veux faire comme dans le framework XMLRAD voir si l'utilisateur à les autorisations pour le webservice invoqué :
    En gros on a refais l'écran d'XMLRAD "Security Management" qui au lieu d'être stocké dans des fichiers XML on a stocké dans la base de données. Maintenant on a besoin de faire dans l'évenement OnAuthorize donc pour chaque webservice savoir si oui ou non l'utilisateur a le droit d'utiliser la fonction. J'ai vu que dans le code source qu'il y a un appel à un hook pour OnAuthorize mais je ne sais pas ni comment ni où le déclenché.

    Merci d'avance
    Michel

  4. #4
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    Le lus simple c'est quand meme de s'appuyer sur la gestion des autorisations de XMLRAD en amppant dan sle OnAuthenticate, l'utilistateur avec un groupe déjà existant.
    sinon il y a directement le OnAuthroize, pourquoi utiliser un hook ici ?

  5. #5
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Par défaut
    Citation Envoyé par RDM
    sinon il y a directement le OnAuthroize, pourquoi utiliser un hook ici ?
    Bein j'ai vu ça dans le code delphi et c'est à ce moment là qu'a priori ils vont chercher dans le fichier du service contenant la liste des groupes d'utilisateurs définis.
    Donc ce que je voulais faire c'est au lieu qu'il regarde dans le fichier XML du service contenant la liste des groupes valides pour ce service et bein qu'il regarde dans la base de données pour effectuer cette recherche.
    Après de faire appel à un hook ou un autre mecanisme c'est justement ce que je recherche comme info

    Merci d'avance

    Michel

  6. #6
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    L'événement OnAuthorize est justement fait pour ca.
    mais je persiste a dire qu'il vaut mieux mapper les groupes/utilisateurs de la base de donénes avec les groupes du fichier Securoty.xml dans l'événement OnAuthenticate, car sinon faut se refaire tout le mécanisme de gestion des droits par XMLService... pas une mince a faire.

  7. #7
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Par défaut
    Oui ça on sait que ce n'est pas simple mais bon on a un besoin de généraliser ce mécanisme pour l'application WEB mais aussi pour notre appli déjà existante utilisant ce principe. Pour info nous avons déjà refais la partie "Security Management" nous reste à faire sur chaque XMLModule de checker l'autorisation de l'utilisateur ce qui ne me parait pas une grosse tache à faire. Juste à nous à trouver une solution "copier/coller" dans chaque XMLModule

    Allez je vous tiens au courant de nos avancées cela peut servir à d'autres

    Michel

  8. #8
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 154
    Par défaut
    Bon voila comme promis les nouvelles :
    1) nous avons maintenant un écran avec utilisation des fragments pour créer/ajouter/updater/supprimer un service dans la liste des services pour attribution des droits sur les groupes d'utilisateurs
    2) Tout ce bo monde on le met dans une base de données
    3) lors de l'authentification on a suivi le tutorial de RDM
    4) lors de l'autorisation on a mis un event sur le XMLCollectionEvents dans delphi (tant pis pour le scripting ) qui nous placent l'ensemble des groupes de l'utilisateurs + autres données dans la zone XMLC_Params du document XML généré
    !!! Attention ici on a remarqué et on sait fais avoir que si on en déclare 2 un dans chaque module y a gros souci .. et tant mieux qu'il y en a qu'un à géré car d'apres ce que j'ai put remarqué il n'y a qu'un XMLCollectionEvents pour l'ensemble des modules ...

    En tout cas ça marche chez nous pour tous les XMLmodules de l'application là est l'essentiel

    Sinon un petit ajout serait sympa c'est d'avoir une instruction style DBExtract permettant de récupérer un ensemble de valeurs permettant ainsi d'éviter l'utilisation du DAC ... j'ai tout essayé mais dans ce gestionnaire d'évènement on ne peut pas trop se permettre d'appeler un autre XMLService sinon on retourne dans cette boucle et ainsi de suite

    Voila pour le retour sur expérience de notre intégration.

    Merci encore à vous tous pour votre aide

    Michel

  9. #9
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    Citation Envoyé par mchicoix
    !!! Attention ici on a remarqué et on sait fais avoir que si on en déclare 2 un dans chaque module y a gros souci .. et tant mieux qu'il y en a qu'un à géré car d'apres ce que j'ai put remarqué il n'y a qu'un XMLCollectionEvents pour l'ensemble des modules ...
    on peut déclarer autant de XMLCollectionEvents que l'on veut mais ca sert un peu à rien, puisque'il sont appelés par XMLCollection et non pas par XMLModule !
    Sinon un petit ajout serait sympa c'est d'avoir une instruction style DBExtract permettant de récupérer un ensemble de valeurs permettant ainsi d'éviter l'utilisation du DAC ... j'ai tout essayé mais dans ce gestionnaire d'évènement on ne peut pas trop se permettre d'appeler un autre XMLService sinon on retourne dans cette boucle et ainsi de suite
    j'ai pas tout compris, mais il existe le fichier ByPass qui permet d'indiquer des XMLServices qui ne tombent pas sous le comp de l'authentification/authorization.
    a coté de cela il y le XMLCollection.DBExtract/XMLCollectrion.DBForEach
    pour faire des extraction depusi la base de données dans le code.

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

Discussions similaires

  1. [AC-2003] Interdire l'accès direct aux tables mais pas via les formulaires
    Par Aegnor dans le forum Sécurité
    Réponses: 2
    Dernier message: 27/09/2011, 10h22
  2. Accès aux bases de données via les objets de Borland (Bdpxx)
    Par agodinasandrien dans le forum Delphi .NET
    Réponses: 9
    Dernier message: 26/09/2005, 14h00

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