Bonjour à tous
Dans le cadre d’un projet 3 tiers pour l’école en .Net mon groupe et moi avons décidé d’utiliser des webServices..
Chaque couche de l’application est donc représentée par un webService sauf la gui qui est une application web normale en asp.net.
La ou on coince c’est sur comment garder la référence vers le webservice « métier » tout au long de la session de l’utilisateur. De son login à son logout.
Dans notre projet quelqu’un doit pouvoir se loguer et en fonction de son rang il a accès à plus ou moins de fonctionnalités de la couche métier.
Comment faire pour que quand on instancie notre couche métier elle garde en mémoire l’user et son rang afin de pouvoir faire plusieurs appels dessus et ce depuis différentes pages web ?
Est-ce qu’il existe une espèce de session propre au webservice ?
Dans notre idée nous voyons deux manières de faire qui ne nous semblent pas très optimisées :
1) On crée une table des users online. On envoie l’objet user au site web qui le sauve dans sa session et qui le renvoie en paramètre à chaque appel d’une méthode du webservice. Celui-ci vérifie avant d’exécuter la méthode si l’user reçu en paramètre possède le droit de le faire et si il est bel et bien connecté.
2) On enregistre toujours le user dans la session du site web et on le passe à chaque méthode du webservice métier. Celui-ci check sur la base de données si son login/pwd est bien correct et vérifie ensuite si le rang est suffisant. Si une des deux conditions n’est pas bonne alors il n’exécute pas la méthode.
Est-ce que vous voyez de quoi je parle de un? Si oui est ce que vous voyez une meilleure manière de faire ?
On est des noob en webservices.
Merci d’avance à tous.
Partager