问题描述
我有一个单击过的Windows应用程序,它已经具有身份验证n内置了授权。之前我曾将其部署在物理服务器上n与用户共享位置,以便他们可以安装它并使用它。但是现在我们决定将其部署在azure PAAS服务(应用程序服务)上。但是目前,URL受到我想要限制的任何人的访问。当前,我的组织AD未与Azure AD同步。因此无法使用Azure AD进行身份验证。 除了基于IP限制用户外,请提供一些更好的解决方案。
解决方法
如果是文件下载,则可以将其放在Azure Blob存储上进行下载并生成短时SAS令牌。
,尽管IP地址限制和Azure AD身份验证将是您的方案的一种有效方法。由于您不想走这条路(由于环境限制),因此,如果您愿意,可以使用指定的提供程序(Microsoft帐户,Facebook,Google,Twitter或任何OpenID Connect提供程序)对用户进行身份验证。 App Service提供了内置的身份验证和授权支持,因此您可以通过编写最少的代码或不编写代码来登录用户并访问数据。
App Service使用联合身份,其中第三方身份提供者为您管理用户身份和身份验证流程。您还可以使用多个登录提供程序。
因此简单的过程可能是:
选项是使用登录。 App Service将所有匿名请求重定向到您选择的提供者的/.auth/login/ 提供者> 。如果匿名请求来自本地移动应用,则返回的响应为HTTP 401未经授权。
请结帐有关流程/工作流程的分步说明: Configure your App Service or Azure Functions app to use Microsoft Account login
如果您的WebApp位于VNet上,则可以通过访问限制为Microsoft.Web启用service endpoints。
请参阅-Advanced usage of authentication and authorization in Azure App Service