仅允许访问ASP.NET核心Web服务中的特定URL

时间:2018-03-19 10:21:53

标签: web-services asp.net-core

我必须在ASP.NET核心中创建Web服务,并且只能从特定的URL访问它。没有使用用户名和密码进行身份验证 我知道我必须使用中间件创建某种自定义过滤来实现这一目标。但是如何获取呼叫者URL地址?

1 个答案:

答案 0 :(得分:1)

在ConfigureServices中,您可以使用CORS策略仅允许特定的来源。 (将IP地址更改为可以调用服务的IP或计算机名称)

public void ConfigureServices(IServiceCollection services)
{
    ...

    services.AddCors(action =>
    {
        action.AddPolicy("origin", policy =>
        {
            policy.WithOrigins(new string[] { "10.1.0.1" });
        });
    });
}

然后在Configure:

中使用它
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    ...
    app.UseCors("origin");
    ...
}