如何将应用程序角色用于WebApp访问安全?

时间:2020-02-11 17:35:40

标签: azure azure-active-directory azure-web-app-service

我开发了具有AAD身份验证的Azure WebApp。拥有有效AD凭据的任何人都可以访问该网站,至少是主页。其他一些页面根据此登录用户所拥有的用户组进行安全检查。所以这就是现在发生的事情:

  • 浏览器转到https://xxx.azurewebsite.net/home.html
  • 立即重定向到AD登录页面
  • 在密码检查浏览器后返回首页。 JWT令牌包含名字,姓氏,电子邮件以及该用户拥有的用户组列表
  • 单击转到其他页面(例如,编辑表单数据)将首先检查用户组,如果不符合要求,则将您踢回到主页。
    • 因此,拥有有效AD帐户(即所有公司员工)的任何人都可以看到主页。
    • 用户组分配的管理是通过公司AD进行的。所以我们有类似IT_GROUP,FINANCE_GROUP,WAREHOUSE_GROUP之类的东西。

好的。实际上,只有一小部分员工需要使用此Web应用程序,大多数情况下,只有每组的经理可以访问。

因此,我在清单中添加了一个名为“ XXXUSER”的应用程序角色,然后将每个管理员分配给该应用程序角色。

接下来,我想使用此应用程序角色来阻止没有此角色的用户访问此Web应用程序。

在这种情况下,是否可以阻止没有该应用程序角色的人员查看主页?

我似乎有些网站可以在AD登录后给出“ AADSTS50105:未将登录用户分配给应用程序的角色”错误。这是我要实现的,但不确定如何运行。

1 个答案:

答案 0 :(得分:0)

请按照以下步骤操作。

导航到门户网站中的Azure Active Directory-> Enterprise applications->搜索广告应用程序的名称(用Application Type选择All Applications)->单击您的应用程序-> Properties->将User assignment required设置为Yes

设置后,登录您的App的用户需要您分配的Application角色,否则,将收到与您提到的错误一样的信息。