Từ:
10:39 21/09/2012
Bài:
33
Cảm ơn:
30
Thích:
10
Theo e có thể làm như sau ạ!
Tổ chức các thông tin có dạng như diagram sau:

Trong tblPages có lưu thông tin về đường dẫn của trang cần kiểm soát (sLink).
Trong phần PageLoad() của mỗi trang kiểm tra quyền của người dùng với trang hiện tại đang mở bằng cách so sánh
+ Mã người dùng: Lấy từ Session đã gán sau khi đăng nhập. Giả sử - Session["UID"]
+ Đường dẫn trang hiện tại đang load bằng cú pháp:
string currentLink = HttpContext.Current.Request.Url.PathAndQuery;
(.PathAndQuery để lấy cả phần QueryString phía sau)
Ví dụ: Có địa chỉ trang http://forum.fithou.net.vn/trangcon.aspx?tid=3106
--> string currentLink = /trangcon.aspx?tid=3106;
Vậy trong cơ sở dữ liệu sẽ lưu link dưới dạng /trangcon.aspx?tid=3106
Mặc định kiểu trả về của hàm CheckPermision là false. Nếu trong danh sách các trang (mã trang) được quyền truy cập của người dùng - lấy từ tblUsersPages tồn tại mã trang (có link trang hiện tại đang xét) thì trả về true
Trong phần PageLoad gọi hàm CheckPermision đã xây dựng như nêu trên. Nếu = false thì Redirect sang trang mặc định nào đó (chẳng hạn NoPermision.html)