如何保护不需要身份验证的公共API?

时间:2016-10-08 21:23:12

标签: api asp.net-web-api api-key

我制作了一个关注服务的网络API:

  1. 返回公司当前职位空缺列表(GET)
  2. 应用于当前打开的任何作业(POST)。
  3. 然后,由angularJS前端使用API​​。我在网上发现的大多数身份验证都需要登录,但我们的网站并不能让我真正使用令牌持有者。

    我必须实施或考虑的事项清单是什么?有什么威胁,我该如何绕过它们?

1 个答案:

答案 0 :(得分:1)

你可以将你的ClientId / ClientSecret添加到你的SPA中,并以某种方式安全地发送它作为每个请求的一部分,可能是AngularJs拦截器会帮助。

在webAPI端只接受那些具有有效clientId的请求,可能使用过滤器。

此处解释了类似的基础架构http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/(clientId,ClientSecret部分)

希望这有帮助。