Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Trang 3 của 5 Đầu tiênĐầu tiên 12345 CuốiCuối
Kết quả 21 đến 30 của 43
  1. #21
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Hi sonomi,

    Tôi nghĩ là bạn cũng nắm được cách thức hoạt động của kiểu phân quyền này :
    - Bạn có thể tạo thêm bao nhiêu Projects dạng "Class Library" tùy ý.
    - Sau đó khai báo chúng trong app.config (như bạn đã làm)
    Khi chương trình chạy thì mình sẽ cập nhật những thông tin mới (trong các dll files mới) xuống DB bằng cách mở Form "Authorizations" lên và click vào button "Generate" và có thể phân quyền cho các nhóm user.

    Sau đó chạy lại chương trình ở chế độ bình thường. Khi đó trong DB đã có dữ liệu để chương trình có thể biết được tập quyền của user đăng nhập mà có cho phép thực hiện 1 quyền nào đó hay không.

    Tất cả chỉ có thế. Tôi không biết bạn gặp lỗi gì nên không thể nói thêm được.
    Bạn có thể test : giả sử khi Click vào button Generate thì dữ liệu mới có được lưu xuống DB hay không?


    - Lỗi: Đã tes tử nếu làm như vậy ở Project XXX.Facade thì chạy đúng, nhưng khi phân quyền ở Project khác thì không.
    ?

  2. #22
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình đọc rất kỹ bào viết của bạn rồi.
    Nhưng cái mình muốn là phần làm menustrip
    Mình không dùng menustrip trong thanh toolbox mà phải load lên từ csdl.

  3. #23
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi lengocktv
    Mình đọc rất kỹ bào viết của bạn rồi.
    Nhưng cái mình muốn là phần làm menustrip
    Mình không dùng menustrip trong thanh toolbox mà phải load lên từ csdl.
    Load lên từ CSDL??????[IMG]images/smilies/tongue.png[/IMG]

    Cái này quái và lạ nè[IMG]images/smilies/laughing.gif[/IMG]

    Có ai làm dc ko????[IMG]images/smilies/biggrin.png[/IMG]

  4. #24
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    cám ơn bạn đã viết một bài rất hay về phân quyền, mình có thắc mắc ở chổ "thêm, sửa , xóa" mình ko thấy bạn lưu trong cơ sở dữ liệu ở bảng nào, bạn có thể giải thích giúp mình được không?

  5. #25
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình đọc kỹ bài này của bạn nhiều lần rồi nhưng loay hoay cũng chỉ nhìn cái sơ đồ và làm theo
    Mình hok rành về C# nên hok hiểu code lắm. Mình chỉ đọc và hiểu 1 vài chi tiết dựa trên sơ đồ. Mình đang áp dụng sơ đồ để code bằng php. Mình đang bị vướng chỗ hok biết làm sao phân quyền đến từng button(Thêm, Xóa, Sửa, Chi tiết). Rất mong được bạn giúp đỡ

  6. #26
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Nguyên bản được gửi bởi lengocktv
    Mình đọc rất kỹ bào viết của bạn rồi.
    Nhưng cái mình muốn là phần làm menustrip
    Mình không dùng menustrip trong thanh toolbox mà phải load lên từ csdl.
    - Bạn nên hiểu 1 điều rằng nếu bạn thiết kế Menu bằng tay thì bạn kéo từ ToolBox vào và add thêm các MenuItem cho MenuStrip đó.
    - Nếu bạn không muốn kéo từ Toolbox vào thì bạn viết code (trong code khai báo tạo ra MenuStrip, sau đó các MenuItem thì được tạo từ DB lên, cũng đâu có gì khác nhau). Nếu bạn chưa nắm được thì bạn nên đọc kỹ lại phần I về phân quyền trên Menu. Trong phần này thì lúc đầu có kéo Menu từ MenuStrip vào, có design bằng tay. Nhưng khi lấy dữ liệu thực sự cho nó là dữ liệu từ DB.

    Phân quyền trên Menu với dữ liệu được lấy từ DB :
    http://forums.congdongcviet.com/showthread.php?t=26610

  7. #27
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    @phong1040572 :
    Thêm, Xóa, Sửa hay làm bất kỳ một thao tác nào thì đều liên quan đến việc gọi Method từ bên dưới. Ở đây các method được lưu trong table Authorizations. Còn việc nhóm người đó được sử dụng method nào thì được lưu trong table GroupAuthorization.

    @thanhdo49th :
    Cái phần phân quyền tới từng Form và mô hình phân quyền tôi đã nói khá kỹ trong bài viết rồi. Bạn nên coi lại nhé.
    Chúc bạn thành công

  8. #28
    Hi thanhdo49th,
    Tôi nói lại 1 chút về cách thức phân quyền trên Form để bạn hiểu :
    - Trên tầng BuinessLogic, bạn đánh dấu các class cần phân quyền bằng cách thêm Attribute như trong bài viết. Kế tiếp đối với các Method cần phân quyền bạn sẽ đánh dấu MethodAttribute. Việc đánh dấu này có tác dụng cập nhật các method cần phân quyền xuống DB khi click vào nút "Generate" trên form Authorization (ở chế độ Admin - được gán trong file app.config : thì mới nhìn thấy button này).
    - Sau khi có dữ liệu dưới DB cho phần Authorization này rồi thì bạn mở Form Authorization để phân quyền cho các nhóm người sử dụng.
    - Khi 1 người sử dụng mở 1 Form nào đó thì 1 function SetAuthorization sẽ được gọi trong Form_Load để visible/invisible 1 button nào đó dựa vào việc chức năng này có tồn tại trong 1 tập hợp quyền mà nhóm người này được sử dụng hay không (tập hợp quyền này được gán trong Form Authorization cho từng nhóm người) ?

    Về Logic thì mô hình phân quyền trên Form theo như bài viết này chỉ có vậy.
    Nếu bạn có gì vẫn chưa hiểu thì bạn cứ tiếp tục Post bài lên để chúng ta cùng thảo luận,

  9. #29
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Tôi có chạy chương trình của bạn tối thấy khi ta chọn cùng một lúc nhiều nhóm người thì chức năng phân quyền không kiêm tra được

  10. #30
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Hi daica123,

    Bạn có thể nói rõ hơn được không?
    Bởi vì module "Phân Quyền" này đã được áp dụng cho 1 số ứng dụng rồi vài năm nay rồi & đến thời điểm hiện tại thì vẫn ổn định.

 

 
Trang 3 của 5 Đầu tiênĐầu tiên 12345 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •