我有2个租户:
我的 web 应用程序位于租户 A 上,我在租户 B 上使用 Azure AD 在门户上配置了身份验证。
在租户 BI 上,仅使用一项不需要管理员同意的权限注册了应用程序:Windows Azure Active Directory > 登录并读取用户配置文件。
当用户登录时,他收到以下错误:
AADSTS90093:此操作只能由管理员执行。注销并以管理员身份登录或联系您组织的管理员之一。
我认为不应引发此错误,因为应用程序所需的唯一权限不需要管理员。
编辑
这是我在未登录时尝试访问应用程序时重定向到的 URL
https://login.microsoftonline.com/d6ac45af-3289-4f79-a826-27824e1c467d/oauth2/authorize?response_type=code+id_token&redirect_uri=https%3A%2F%2Ftechnipfmc-tools-app-test.azurewebsites.net%2F.auth%2Flogin%2Faad%2Fcallback&client_id=d340f0ed-5eb3-43e8-9a50-c449649f3ee1&scope=openid+profile+email&response_mode=form_post&nonce=1895ec0ffef64447bbb712bdae61c7fb_20170521070654&state=redir%3D%252F
Run Code Online (Sandbox Code Playgroud)
编辑 2
我在这里找到了一个解决方案:
作为管理员,您还可以代表租户中的所有用户同意应用程序的委派权限。这将阻止为租户中的每个用户显示同意对话框。您可以从应用程序页面的 Azure 门户执行此操作。从您的应用程序的设置边栏选项卡中,单击所需的权限,然后单击授予权限按钮。
我不知道为什么必须这样做,因为我只使用不需要管理员同意的权限。