0

我在https://apps.dev.microsoft.com的应用程序注册门户中创建了本机应用程序

我已经配置了一个基于 iOS 的 MSAL 框架的 Xcode 项目,并且能够在仅需要用户同意时使用来自 MS Graph 的数据(如 User.ReadBasic.All)

但是,如果我想访问 User.Read.All 范围,它就不起作用。我遇到了管理员授予访问权限的要求(如预期的那样),但我的管理员无法找到授予必要权限的位置。

在 webview 的“授予访问权限”屏幕(请参见下面的屏幕截图)中提示输入管理员凭据时使用管理员凭据登录不起作用(再次重定向回同一屏幕,似乎不接受管理员凭据作为管理员凭据)。

在此处输入图像描述

我们不确定这是否是授予应用程序权限的方式,因为文档没有明确说明管理员如何授予必要的权限。

我们在 Azure AD 中找不到可以授予管理员权限的位置。

有很多关于如何使用 MSAL 框架的文档,但似乎缺少这一步。

4

1 回答 1

1

在应用程序注册门户中添加您的应用程序所需的 microsoft graph 权限后,您可以通过在浏览器中重定向到管理员同意端点来手动请求管理员同意:

GET https://login.microsoftonline.com/{tenant}/adminconsent?
client_id=6731de76-14a6-49ae-97bc-6eba6914391e
&state=12345
&redirect_uri=http://localhost/myapp/permissions

请单击此处了解有关管理员同意端点的更多详细信息。

对于 iOS,重定向 URL 需要与应用程序中注册的 URL 方案匹配,如果您在 apps.dev.microsoft.com 上创建应用程序时使用了引导设置,则该方案为 msal{client-id}://auth。仅当您将上面的管理员同意端点放入安装该应用程序的手机上的浏览器中时,它才有效,否则没有任何可重定向的内容。

于 2017-08-01T05:42:11.803 回答