Przykład użycia Middleware w ograniczeniu dostępu do aplikacji po przez kontrolę adresów IP.
Standardowo Black list i White List.
Jeśli adres nie znajduje się na żadnej z list to automatycznie jest akceptowany (await _next(context);)
Brak dostępu dla adresu z IP 127.0.0.1
Błąd 403 i komunikat: Access denied for IP: 127.0.0.1
Kod 200 i Response Body:
{
"id": 1,
"ip": "10.0.0.1",
"dateTimeAdd": "2023-11-14T20:37:55.3399598+01:00"
}
Świadczące o poprawnym dodaniu adresu IP do tabeli Black.
public static class IpBlockingMiddlewareExtensions
{
public static IApplicationBuilder UseIpBlockingMiddleware(this IApplicationBuilder builder)
{
return builder.UseMiddleware<IpBlockingMiddleware>();
}
}
Wpis do sekcji app w pliku :Program.cs
app.UseIpBlockingMiddleware();