|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 47 ![]() |
Bonjour,
Tout d'abord veuillez m'excuser si jamais le post n'est pas dans le bon forum, car je ne savais pas trop dans quelle section le mettre :s Je vais essayer de vous expliquer mon problème de la manière la plus simple possible Voilà, une société (appelé S) et la mienne avons un client en commun (appelé C). La société S possède déjà une application Web (avec base de données Oracle) chez le client C. le client C nous à demandé un developpement (une application Web, developpé en ASP.net MVC), mais nous a également demandé qu'il n'y ai qu'un seul couple login / mdp des utilisateurs pour les deux applications (celle de S et la mienne). Ainsi, comme la socété S est déja présente chez le client, je pensais me greffer sur leur base de données (apparement une 11G), créer mes tables dans leur base, puis accéder aux identifiants des utilisateurs de la société S (vu qu'au final se seront les mêmes). Seulement la société S n'est pas très motivé pour nous laisser accéder pleinement à leur base de données (logique en quelques sorte, je les comprend ^^), et donc pour solutionner ce problème, va nous créer une vue sur leur base en me créant un compte, et donc je pourrais accéder aux information d'identification des utilisateurs via cette vue en m'identifiant avec le login qu'il me transmettront. Cela me convient parfaitement, seulement, maintenant je me pose une question assez importante, comment faire pour mettre en relation la vue qu'il me créé sur leur instance de BDD, et ma base de données (donc sur l'instance de BDD que l'admin réseaux du client C me donnera) ? Je pensais, dans oracle, à me connecter à la base de données de la société S afin d'éffectuer des requetes de selection sur la vue puis, mais j'aurais préféré autre chose comme par exemple que ma table ou sont les informations d'identification de mon schéma soit mise à jour periodiquement (ou automatiquement) par les information de la vue via un script, ou un job oracle peut être. En quelques sorte, j'aimerais synchroniser automatiquement la vue qui m'est mise à disposition et ma table dans ma BDD Voilà, j'espère que vous avez compris un peu près mon problème tout de même, et attend vos conseils avisés Bonne journée. |
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() Inscription : mai 2002 Messages : 1 638 ![]() |
Mais la société n'utilise pas un ldap pour gérer les utilisateurs ?
|
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 47 ![]() |
Bonjour punkoff,
Merci de ta réponse, mais non, tout les identifiants des clients qui utilisent l'application de la société S sont stockés dans la base de donnée de l'application, une base oracle. |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() François Inscription : février 2010 Messages : 305 ![]() |
Un db-link?
|
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 47 ![]() |
Bonjour Rams7s,
Merci pour l'indication, je crois que dans un premier temps je vais partir la dessus, mais comment se passe l'authentification à la base (le login et le mdp) dans un db-link ? Mais donc il n'y aurait pas de procedure ou de fonction qui permettrait de mettre à jour automatiquement une table en fonction d'une vue ? je sens que si je dois le faire moi même cette routine de mise à jour automatique, je vais bien me prendre la tête ^^ lol que me conseillerez-vous si je partirais dans l'écriture d'une fonction / procédure de mise à jour : tache windows ou jobs oracle ? Merci de vos réponses bonne soirée |
|
|
00
|
|
|
#6 |
|
Membre confirmé
![]() Grégoire MARTINIngénieur développement logiciels Inscription : janvier 2011 Messages : 128 ![]() |
Bonjour,
Nous avons bien la base de donnée de la société S et la tienne qui seront toutes les deux hébergées chez le client C ? Si oui il faut comme l'a souligné Rams7s demander à l'admin de ton client C de créer un dblink entre ta future base de donnée et celle de la societé S si elle sont distantes ( pas sur la même instance Oracle ) sinon un droit de lecture de ton client vers la vue de la société S devrait suffire. Dans le cas d'un dblink tu pourras alors consulter la vue comme ceci : Code :
SELECT * FROM <shéma de la societé S>.<nom de la vue>@<dblink créé par l'admin> Code :
SELECT * FROM <shéma de la societé S>.<nom de la vue> Code :
CREATE OR REPLACE SYNONYM mon_synonyme FOR <shéma de la societé S>.<nom de la vue>@<dblink créé par l'admin> Après plusieurs points : 1) tu ne seras pas maitre des données de la société S , donc en cas de problèmes de cette dernière tu seras fortement impacté.. 2) Vos populations d'utilisateurs sont elles vraiment ISO ? 2.1) N'y a t il pas d'exceptions ? 2.2) Si dans ton appli il y a création d'un nouvel utilisateur, celui ci devra t il pouvoir se connecter sur l'appli S ? (réciprocité des authentifications ) ... bonne chance ! Cordialement. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com