首页 > 解决方案 > 如何将我的 Azure Web 应用 API 访问限制为仅对我的 Xamarin.Forms 应用程序的访问?

问题描述

我是一位经验丰富的 Xamarin 开发人员,但对后端的东西完全陌生。我编写了一个 API,其中包含一些数据,比如天气,我的 Xamarin.Forms 应用程序将查询这些数据。所有调用都是 GET 调用,因此没有安全问题,但我想限制 API,以便只有我的应用程序有权进行这些调用。这是为了防止其他一些狡猾的开发人员构建他们自己的应用程序来调用我的 API。

我知道已经做了一些研究,最好的方法是让用户登录我的应用程序,然后通过 Azure AD 进行身份验证。然而,对于一个安全性不是真正问题并且没有个人用户数据被传递的轻量级应用程序来说,这非常麻烦。

有没有人有一个天才的例子来说明如何做到这一点?我发现这篇文章非常有用,但它并没有真正给出解决方案。我接受这不是最安全的方法,但实际上这是一个风险/回报/努力的事情,我只是想让它比现在更困难一些(我基本上托管了一个非常好的公共 API !! )。

标签: c#visual-studioasp.net-corexamarin.formsazure-web-app-service

解决方案


有志者,事竟成。

你可以做一些基本的过滤来阻止一些人,但是如果没有对存储在你的应用程序之外的数据进行身份验证,那么就有一种方法可以模仿你的应用程序并以一种可能无意的方式使用你的 API。

这个 StackOverflow 答案更深入一点,但与同一点相呼应。


推荐阅读