-
16-04-2012, 10:54 AM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
RoleProvider MVC3 (Login Phân Quyền)
Hôm nay mình sẽ hưỡng dẫn các bạn phân quyền của một tài khoản khi đăng nhập vào website của bạn.
mô hình mvc3.
b1.sửa file Web.config
b2.tạo một class CustomRoleProvider.cs để quản lý phân quyền.
b3.tạo Homecontrollers và view login
b4.tạo Admincontrollers và view admin
demo vài hình ảnh
code full ở file đính kèm các bạn dowload về xem.
sẽ giải đáp về .net MVC3View more random threads:
- [Tutorial Clip] How to use WCF Service - ASP.NET C sharp SQL Server - VS 2012
- Giới thiệu với các bạn bộ thư viện Serialize, Deserialize object ra mảng bytes và từ mảng bytes ra đối tượng một cách đơn giản
- Tạo menu load csdl trên template MVC3 razor
- Hướng dẫn viết game Dò mìn (Minesweeper) bằng C# + sourcecode
- Đưa hình ảnh vào CSDL SQL 2000 với lập trình C#?
- Lập trình XNA Cơ bản
- Nhận dạng biển số xe ô tô
- Chương trình Chat qua cổng COM.
- Tạo ComboBox có tính năng auto-complete trong lập trình C#
- Làm các nút di chuyển First,Prev,Next và Last trên datagirdview
-
08-05-2012, 08:20 AM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi ducnv_b01048
Thích sự đơn giản nhưng lại có thể làm được những thứ mình cần.
cái membership của thằng Micrisoft thì mình lại phải tạo cái CSDL mẫu của nó,mà việc thêm,sửa xóa nó lại không theo cách thông thường của MVC,mình làm code first nên chằng biết thao tác nó như thế nào
Download mấy cái membership trên mạng về,copy-pate sài thì được,nhưng đọc vào code thì trời ơi rối rắm lắm.
Mình mắc mỗi cái này là có thể cho ra cái sản phẩm dở hơi của mình.Rất mong bạn sớm có lời hồi đáp
Cảm ơn bạn rất nhiều.
Ket ket - hè đến rồi ,thèm bia quá,không biết có ai trong CViet hứng thú vụ này không.Hôm nào tui mời đi xả láng luôn
chào bạn:ducnv_b01048
Chờ mãi lời hứa chiều thứ 5 có bái về quản lý phân quyền của hảo hán mà không thấy đâu.
Chắc cao thủ bận quá,nhưng thực sự mình đang rất cần,bạn có thể có bài sớm được không .Hay có thể sent cho mình cái demo được không ,mail mình là : billsangvn@gmail.com
Cảm ơn rất nhiều
-
08-05-2012, 05:24 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Chào bạn ducnv_b01048 .Xin lỗi mình tìm thấy file đó rồi
Tuy nhiên bạn có thể hướng dẫn rõ hơn phần code xử lý dưới database được không.Kéo roẹt cái Linq to sql làm demo cho anh em dễ hiểu được không
Việc thiết kế Database như thế nào,mình chỉ cần 1 table có đủ trường cơ bản như :
TenDangNhap,MatKhau,QuyenHan
hay phải tách làm 2 bảng :
Bảng 1: TenDangNhap,MatKhau
Bang 2: QuyenHan
Mình định làm 1 cái web nhỏ,các quyền là cố định ( Admin,Member,Guest) ,sau đó có 1 tài khoản Admin cho phép chỉ định role cho từng tài khoản.
Mình dùng cái Membership của thằng Microsoft thì trông nó đồ sộ quá,với lại khi up lên host muốn gán quyền cho tài khoản cũng cần code rât phức tạp.Chi bằng viết cái đơn giản phục vụ mục đích của mình.
Mình thấy cách bạn hướng dẫn rất đơn giản phù hợp với mục đích của mình.Tuy nhiên bạn vắn tắt quá nên mình chưa hiểu
-
08-05-2012, 06:12 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi billsang
à cái này nó ngang cái Membership mà.nhưng mình thích dùng cái này vì nó dễ quản lý và tường minh đơn giản dễ hiểu.mình thích sự dễ hiểu
-
11-05-2012, 04:28 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
mình gửi vào mail rồi đấy.sorry bạn tại có buổi họp.mình quyên mất!@@
bạn có thể dowload ở đây.có gì mail cho mình nhé.
bài này mình làm trên csdl rồi đấy.bạn xem entty để xem csdl và tạo nhé.
sau đó bạn tạo tài khoản và phân vai trò(roles) cho nó.
có 3 vai trò nhé.
- "admin"
- "nhanvien"
- "nguoidung"
+ với quyền admin thì có thể vào được hết các trang.
+ nhân viên thì chỉ có thể vào được trang nhân vien và trang người dùng
+ người dùng thì chỉ có thể vào trang người dùng.
[IMG]images/smilies/biggrin.png[/IMG]
-
11-05-2012, 06:56 PM #6Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
cảm ơn hảo hán,mình sẽ download về tìm hiểu
-
12-05-2012, 12:39 PM #7Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
không có phản hồi gì.chắc là ngon lành rồi chứ hả!
-
12-05-2012, 02:36 PM #8Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Vừa phải đi 1 ngày ra ngoài,chưa có thời gian làm được.
Chưa thử ,nhưng download code về coi thấy rất gọn gàng và dễ hiểu.Chắc làm làm ok
Các của bạn rất phù hợp với yêu cầu về quản trị quyền hạn đơn giản cuả mình
Tuy có thêm chút thắc mắc nữa đó là,bạn có thể xây dựng phần MembershsipProvider không,để có thêm các tính năng về đăng nhập như : đăng ký,thay đổi pass ... như cái AccountController mà thằng Visual Studio nó tạo sẵn cho ta ý.
Dĩ nhiên đó là vấn đề sau này phát triển web của mình phức tạp hơn,hiện tại mình đang dùng cái bạn vừa demo,tuy nhiên tiện đây thì hỏi luôn,sau này đỡ mất công tìm hiểu lại.
Dù sao cũng cảm ơn bạn rất...rất nhiều,từ hồi mới bước chân vào thế giới .net hôm nay mới gặp được bạn là người nhiệt tình và hiệu quả như thế
Thân chào !
Phần web.config bạn khai báo là:
Mã:<roleManager enabled="true" defaultProvider="MyRoleProvider"> <providers> <clear /> <add name="MyRoleProvider" type="PhanQuyenMVC3.CustomRoleProvider" /> </providers> </roleManager>
Model và minh khai báo type là:
Mã:type="MvcDangNhap.CustomRoleProvider"
Mong bạn fix giùm
cảm ơn rất nhiều
An mình fix được rồi,phần type là tham chiếu tới file CustomRoleProvider.cs
mình cần tham chiếu lại vì đặt trong thư mục Model,và đã ok
-
12-05-2012, 04:31 PM #9Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Đã chạy thử,và tất cả mọi thứ đều ok.
Mình hỏi thêm chút đó là.Mình muốn lưu tên đăng nhập và mật khẩu của người dùng trên trình duyệt đến khi nào họ đăng xuất mới thoát,nếu họ chỉ tắt trình duyệt đi thì khi nào vào lại trang thì vẫn không cần đăng nhập.
Mình đoán là dùng cái cookies gì đó,nhưng do dạo trước mình học thẳng mvc ko qua cái thằng asp nên cũng hơi lơ mơ về cái này
-
12-05-2012, 06:42 PM #10Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi billsang
Bản thân mình cũng đã tự viết các providers theo đặc tả của MS bằng NHibernate và bằng EF Code First, và nó cực kỳ phức tạp. Tất nhiên, bạn cũng nên tự học để viết các Membership Provider và RoleProvider cho riêng mình, nhưng cái này không ổn tí nào.
Hiện tại trang Jou Lập trình có sử dụng hệ thống SSO từ id.jou.vn, và id.jou.vn sử dụng customize providers làm bằng EF Code First, nhưng có lẽ mình sẽ sử dụng công nghệ khác trong tương lai, EF với LINQ hiện đã có tốc độ rất nhanh, nhưng so với việc thực thi câu lệnh SQL trực tiếp thì vẫn khá tốt. Các bạn thì cứ nên sử dụng EF, code nhanh và gọn gàng!
^^
Dưới ánh nắng mặt trời đang lên, những đống pallet nhựa An Giang trải dài mênh mông như những bức tranh tự nhiên đầy sắc màu. Mỗi chiếc pallet nhựa không chỉ là một vật dụng thông thường mà còn là...
Pallet nhựa An Giang giao hàng...