Tôi đang tạo trang web loại mạng nội bộ với ASP.NET 5 sử dụng Xác thực Windows. Tôi có xác thực đang hoạt động, nhưng tôi không muốn mọi người trên miền có quyền truy cập vào trang web mạng nội bộ. Tôi không thể sử dụng vai trò tên miền vì vậy tôi đã thiết lập vai trò tùy chỉnh của riêng mình trong SQL Server của tôi. Tôi có một bảng ánh xạ tên người dùng tên miền cho các vai trò. Tôi muốn hạn chế quyền truy cập vào trang web mạng nội bộ để chỉ những người dùng có vai trò được xác định trong bảng vai trò SQL Server của tôi. Làm cách nào để thiết lập vai trò tùy chỉnh cho Xác thực Windows trong ASP.NET 5? Cảm ơn!ASP.NET 5 Vai trò tùy chỉnh cho Xác thực Windows
Trả lời
Bạn không thiết lập vai trò tùy chỉnh. Bạn cần tạo thuộc tính ủy quyền tùy chỉnh, như được mô tả here.
UPDATE:
Vâng, bạn có thể sử dụng thuộc tính ủy quyền tùy chỉnh của bạn trên toàn cầu. Hãy nói rằng đây là tùy chỉnh ủy quyền Thuộc tính của bạn:
public class MyAuthorizeAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
var username = httpContext.User.Identity.Name;
// Check to see if user has a role in the database
var isAuthorized = db.User.Find(username).Any();
return isAuthorized;
}
}
Sau đó, bạn có thể sử dụng nó ở cấp độ hành động hoặc mức điều khiển như thế này:
[MyAuthorize]
public ActionResult Index()
{
}
Hoặc bạn có thể đăng ký nó như một bộ lọc toàn cầu trong lớp FilterConfig của bạn trong thư mục App_Start, như sau:
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
filters.Add(new MyAuthorizeAttribute());
}
}
Thuộc tính ủy quyền tùy chỉnh có thể tự động chạy trên mọi yêu cầu không? Tôi nghĩ rằng đó chỉ là để thêm một thuộc tính trên bộ điều khiển cụ thể như [MyCustomAttribute] để hạn chế người dùng trên một bộ điều khiển cụ thể (s). – Jeremy
- 1. Cách thiết lập OWIN bằng xác thực Windows và nhà cung cấp vai trò tùy chỉnh
- 2. Vai trò tùy chỉnh đơn giản cho xác thực cửa sổ trong asp. mạng lưới?
- 3. Vai trò có sẵn với Xác thực Windows
- 4. Xác thực vai trò đơn giản trong asp.net
- 5. ASP.NET MVC Cách tạo nhà cung cấp vai trò tùy chỉnh
- 6. Xác thực tùy chỉnh trong ASP.Net-Core
- 7. Xác thực và vai trò trong WPF
- 8. Asp.net MVC 4 + WEB API - Mã xác thực tùy chỉnh
- 9. Thực tiễn tốt nhất cho vai trò và xác nhận quyền sở hữu trong ASP.NET Identity
- 10. Wordpress thêm vai trò tùy chỉnh cũng như xóa vai trò mặc định
- 11. Hỗ trợ Xác thực Windows trong ASP.NET 5 beta 8
- 12. Asp.net MVC Quản lý vai trò
- 13. Chuyển hướng Xác thực Windows sang trang 401 tùy chỉnh
- 14. ASP.NET 5 Identity - tùy chỉnh SignInManager
- 15. Cách tạo vai trò người dùng tùy chỉnh trong Wordpress
- 16. MVC 5 - Vai trò - IsUserInRole và Thêm người dùng vào vai trò
- 17. ASP.NET Core 2 - Identity - lỗi DI với vai trò tùy chỉnh
- 18. Xác thực và ủy quyền không có khung thực thể trong ASP.NET 5 MVC 6
- 19. Cách triển khai xác thực tùy chỉnh trong ASP.NET MVC 5
- 20. ASP.NET Core - Thêm xác nhận quyền sở hữu vai trò cho Người dùng
- 21. Nhà cung cấp thành viên/vai trò ASP.NET cho Postgres?
- 22. AspNetWindowsTokenRoleProvider không hoạt động chính xác cho Xác thực Windows trong ASP.NET
- 23. Xác thực Mẫu: Vai trò (MVC 4) C#
- 24. Thành viên ASP.net - thêm vai trò
- 25. Xác thực Windows với ASP.NET MVC
- 26. Xác thực trong ASP.NET 5 (vNext)
- 27. Làm cách nào để cho phép nhiều vai trò xem một trang khi sử dụng RoleProvider tùy chỉnh trong ASP.Net
- 28. Sử dụng xác thực Vai trò Windows trong App.config với WCF
- 29. Vai trò Windows Azure không phản hồi
- 30. Khung chơi, Scala: xác thực Người dùng theo Vai trò
bạn đã xem SqlRoleProvider chưa? –
Tôi không tin rằng SqlRoleProvider có sẵn trong ASP.NET 5. Ít nhất tôi không thể tìm thấy bất kỳ tham chiếu đến nó. – Jeremy