CFSDN nhấn mạnh vào giá trị tạo ra nguồn mở và chúng tôi cam kết xây dựng nền tảng chia sẻ tài nguyên để mọi nhân viên CNTT có thể tìm thấy thế giới tuyệt vời của bạn tại đây.
Bài viết trên blog CFSDN Cách thiết lập danh sách đen trắng (hạn chế định tuyến) trong Asp.net Core này được tác giả sưu tầm và biên soạn. Nếu bạn quan tâm đến bài viết này, hãy nhớ thích nó.
Trong AspnetMvc ban đầu, chúng tôi sẽ sử dụng các hạn chế truy cập định tuyến và viết nội dung sau trong AppStart/RouteConfig.cs:
?
1
|
tuyến đường.IgnoreRoute(
"{tài nguyên}.axd/{*pathInfo}"
);
|
Tuy nhiên, tệp RouteConfig.cs và phương thức ghi không còn tồn tại trong mvc lõi aspnet. Làm cách nào chúng ta có thể đạt được hiệu quả tương tự trong mvc lõi Aspnet?
Middleware chúng ta cần sử dụng ở đây là UrlFirewall.
1) Mô tả:
UrlFirewall là một phần mềm trung gian nhẹ, mã nguồn mở để lọc các yêu cầu http, có thể được sử dụng trong webapi hoặc cổng.
2) Giới thiệu:
UrlFirewall là phần mềm trung gian lọc yêu cầu http có thể được ghép nối với cổng (Ocelot) để chặn quyền truy cập mạng bên ngoài vào các giao diện bên trong, chỉ cho phép các giao diện bên trong giao tiếp với nhau mà không để lộ chúng ra bên ngoài. Nó hỗ trợ chế độ danh sách đen và chế độ danh sách trắng, đồng thời hỗ trợ mã phản hồi yêu cầu http tùy chỉnh. Nó có khả năng mở rộng tốt và có thể tự triển khai logic xác minh cũng như truy xuất các quy tắc từ phương tiện như cơ sở dữ liệu hoặc bộ đệm Redis.
3) Sử dụng:
1], hãy thêm các thành phần từ Nuget vào dự án ASP.NET Core của bạn.
?
1
|
Cài đặt gói UrlFirewall.AspNetCore
|
2], định cấu hình DI trong configureServices của startup.cs.
?
1
2
3
4
5
6
|
dịch vụ.AddUrlFirewall(tùy chọn =>
{
tùy chọn.RuleType = UrlFirewallRuleType.Black;
tùy chọn.SetRuleList(Configuration.GetSection(
"UrlBlackList"
));
tùy chọn.StatusCode = HttpStatusCode.NotFound;
});
|
3], hãy định cấu hình phần mềm trung gian trong Cấu hình trong startup.cs.
?
1
2
3
4
5
6
7
8
9
10
11
12
|
ứng dụng.UseUrlFirewall();
nếu như
(env.IsDevelopment())
{
ứng dụng.UseDeveloperExceptionPage();
ứng dụng.UseStaticHttpContext();
}
khác
{
ứng dụng.UseExceptionHandler(
"/Trang chủ/Lỗi"
);
ứng dụng.UseHsts();
}
|
4], để loại bỏ Configuration.GetSection("UrlBlackList") trong 2, bạn cần sử dụng tên Mục UrlBlackList. Chúng tôi thêm cấu hình sau vào tệp appsinstall.json/appsettings.Devolopment.json.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
{
"Ghi chép"
: {
"Mức độ ghi nhật ký"
: {
"Default"
:
"Thông tin"
,
"Microsoft"
:
"Cảnh báo"
,
"Microsoft.Hosting.Trọn đời"
:
"Thông tin"
}
},
"UrlBlackList"
: [
{
"URL"
:
"{tài nguyên}.axd/{*pathInfo}"
,
"Phương pháp"
:
"Tất cả"
}
]
}
|
Bằng cách này, .axd trên máy chủ của chúng tôi sẽ không được yêu cầu.
Phần này kết thúc bài viết này về cách thiết lập danh sách đen trắng (hạn chế định tuyến) trong Asp.net Core. Để biết thêm thông tin về cách thiết lập danh sách đen trắng định tuyến trong Asp.net Core, vui lòng tìm kiếm các bài viết trước của tôi hoặc tiếp tục. duyệt các bài viết liên quan dưới đây tôi hy vọng tất cả các bạn sẽ ủng hộ tôi trong tương lai! .
Liên kết gốc: https://blog.csdn.net/zyzBulus/article/details/113863685.
Cuối cùng, bài viết này về cách thiết lập danh sách đen trắng (hạn chế định tuyến) trong Asp.net Core kết thúc tại đây. Nếu bạn muốn biết thêm về cách thiết lập danh sách đen trắng (hạn chế định tuyến) trong Asp.net. Core, vui lòng tìm kiếm bài viết CFSDN Hoặc tiếp tục duyệt các bài viết liên quan, tôi hy vọng bạn sẽ ủng hộ blog của tôi trong tương lai! .
Tôi là một lập trình viên xuất sắc, rất giỏi!