• .net core 增加IP过滤


    利用IPAddressRange包实现IP过滤

    1、安装nuget上的 IPAddressRange 包

    2、继承ActionFilterAttribute

    using System.Threading.Tasks;
    using Microsoft.AspNetCore.Authorization;
    using Microsoft.AspNetCore.Mvc.Authorization;
    using Microsoft.AspNetCore.Mvc.Filters;
    using Microsoft.Extensions.Logging;
     
    namespace ClientIpAspNetCore.Filters
    {
        public class ClientIdCheckFilter : ActionFilterAttribute
        {
            private readonly ILogger _logger;
     
            public ClientIdCheckFilter(ILoggerFactory loggerFactory)
            {
                _logger = loggerFactory.CreateLogger("ClassConsoleLogActionOneFilter");
            }
     
            public override void OnActionExecuting(ActionExecutingContext context)
            {
                _logger.LogInformation($"Remote IpAddress: {context.HttpContext.Connection.RemoteIpAddress}");
     
                // TODO implement some business logic for this...
     
                base.OnActionExecuting(context);
            }
        }
    }

    3、ActionFilter 可以添加到服务中。

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddScoped<ClientIdCheckFilter>();
     
        services.AddMvc();
    }

    4、作用根据需要专门用于任何控制器

    [ServiceFilter(typeof(ClientIdCheckFilter))]
    [Route("api/[controller]")]
    public class ValuesController : Controller

    来自:https://damienbod.com/2016/12/18/implementing-a-client-white-list-using-asp-net-core-middleware/

  • 相关阅读:
    1-4-04:奇偶ASCII值判断
    1-4-03:奇偶数判断
    1-4-02:输出绝对值
    1-4-01:判断数正负
    1-3-20:计算2的幂
    1-3-19:A*B问题
    1-3-18:计算三角形面积
    Use PIVOT Table in SQL Server
    Pivoting DataTable Simplified
    Pivot Methods 行列转换
  • 原文地址:https://www.cnblogs.com/xbding/p/15816493.html
Copyright © 2020-2023  润新知