Bonjour,
Dans mon application asp.net, j'ai créer une classe Habilitation regroupant toute une série de bool qui me permettent de rendre accessible un bouton, un lien, etc..
Par exemple de cette manière :J'initialise les habilitations de l'utilisateur lors du Page_Load de ma masterPage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if (!Habilitation.Admin.ModuleAccess) ibAdmin.Visible = false;
Voila, mon problème est que à certain changement de page et ce de manière aléatoire, les restrictions sautent, du coup l'utilisateur à accès à tout (ce qui est très embêtant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string uName = Request.Cookies["UserInfo"]["Name"]; lbConectedUser.Text = "Bienvenue " + uName; if (!Habilitation.isInit) Habilitation.Init(int.Parse(Request.Cookies["UserInfo"]["ID"])); ApplyRestrictToMenu(); } else { if (!Habilitation.isInit) { Habilitation.Init(int.Parse(Request.Cookies["UserInfo"]["ID"])); ApplyRestrictToMenu(); } } }).
Ce que je ne comprend pas c'est qu'a chaque PostBack ou !PostBack de ma masterPage je ré-initialise si ma classe n'est pas initialisée et j'applique les restrictions, et que j'ai quand même mes bouton (pourtant contenu DANS ma masterPage) qui s’affiche alors qu'ils ne devraient pas.
Ma classe Habilitation est une classe static, dont la variable bool "IsInit" me permet de savoir si elle est initialisé ou non.
Donc est-ce à cause de ma classe, ou peut-être les cookies ?
Merci
Partager