首页 > 解决方案 > 如何授权第 3 方使用 webapi 端点

问题描述

我必须创建一个供第 3 方使用的端点。当人们登录我们的应用程序时,我们使用身份服务器。我需要做什么才能只允许访问此第 3 方来呼叫端点?我不希望任何人都能够调用端点。例如,如果我给了你我的端点 URL,而你使用邮递员发帖,我只会在你被授权的情况下允许你

标签: c#asp.net-web-apiidentityserver3

解决方案


我认为您需要启用微软在此处概述的CORS(跨源请求)。

例如,你可以这样装饰你的控制器:

using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Cors;

namespace WebService.Controllers
{
    [EnableCors(origins: "http://mywebclient.azurewebsites.net", headers: "*", methods: "*")]
    public class TestController : ApiController
    {
        // Controller methods not shown...
    }
}

推荐阅读