Bonjour,
Il s'agit d'un projet de site Internet. J'y utilise le MemberShip fournit avec le framework asp.NET. J'ai deux Base de données (SQL 2008), une pour le MemeberShip et une pour mon application.
Pour filtrer les enregistrements (de la base de données de mon application) en fonction de l'utilisateur connecté, je procède actuellement de la manière suivante :
Extrait d'une page *.aspx.cs
Dans ce cas on constate que MemeberShip.GetUser() doit faire une requête vers la base de données gérant le memeberShip avant chaque fois que je fasse mes requêtes (avec mon paramètre User_id).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 string User_id = MemeberShip.GetUser().ProviderUserKey.ToString(); /* Puis utilisation de User_id comme paramètre dans mes requêtes pour filtrer les enregistrements. */
De ce fait j'ai pensé à la solution suivante :
Extrait de ma page *.master
Extrait d'une page *.aspx.cs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If(Session["User_id"] == null) { Session["User_id"] = MemeberShip.GetUser().ProviderUserKey.ToString(); }
Les questions qui me viennent alors sont :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 string User_id = Session["User_id"].ToString(); /* Puis utilisation de User_id comme paramètre dans mes requêtes pour filtrer les enregistrements. */
Est-ce que cette méthode est risquée en terme de sécurité?
Est-il possible d'altérer une Session (par un utilisateur malveillant)?
Est-ce que une de ces solutions est viable? Si non, que proposez vous?
Merci d'avance
Partager