如何限制对Web API 2应用程序中的已知客户端应用程序的API访问?

问题描述 投票:1回答:1

我创建了一个由三个主要组件组成的应用程序:

  1. .NET Web Api 2项目,提供多个WebApiControllers。某些方法(如“注册”)对匿名访问开放,而其他方法则使用基于令牌的基本授权(.Net WebApi2模板中包含的标准.Net Identity 2方法)进行授权。为了快速和脏功能,该层使用Entity Framework直接与我的数据库通信。
  2. 一个MVC5项目,提供前端Web客户端并与Web API通信。
  3. 与Web API通信的iOS客户端。

通过这种结构,最终用户(“消费者”)可以使用未经身份验证的“注册”API方法创建自己的帐户。然后,用户可以通过基于令牌的授权头保护的经过身份验证的方法访问和操作自己的数据。

这是我的问题:

如何防止未知客户端调用API,而不会产生大量开销或检修标准.Net Web API授权功能?

理想情况下,我希望能够为客户端应用程序提供某种标识符表,以便我可以允许新的客户端应用程序或在必要时禁止它们。

c# .net api restful-authentication asp.net-web-api2
1个回答
0
投票

查看Active Directory清单中的knownClientApplications参数。 https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-application-manifest

© www.soinside.com 2019 - 2024. All rights reserved.