0

我正在尝试从本机应用程序调用图形 api URL https://graph.microsoft.com/v1.0/me但访问被拒绝。

如果我从本机应用程序调用 web api 授权控制器,我成功地进行了身份验证。

当我尝试在后端进行 REST 调用时,我也被拒绝访问(提供用户的令牌)。

我尝试通过 HttpClient 类(用于本机应用程序)和 adal.js 用于前端来实现它——在这两种情况下,我都成功地对装饰有 Authorized 属性的 Web api 控制器进行了身份验证,但无法调用 Graph API 服务。

我已经运行了一个 Web 调试代理并确保正确发送了授权标头。

我做了以下事情:

  1. 创建 Azure 原生应用
  2. 创建 Azure Web 应用
  3. 将本机应用程序的权限提供给 web api 应用程序

    一个。在默认权限中添加了读取目录数据权限

  4. 在本机应用程序中输入重定向 URI - 与 Web API 之一相同的 URL

  5. 从 Azure AD 更新了 Web 应用清单。将 oauth2AllowImplicitFlow 设置为 true
  6. 提供 Web 应用程序的权限

    Windows Azure 活动目录:

    一个。应用程序权限 - 读取目录数据

    湾。委派权限:以登录用户身份访问目录

    C。委托权限:读取目录数据

    d。委派权限:登录并阅读用户个人资料

    微软图表:

    一个。委派权限:让用户登录

    湾。委派权限:以登录用户身份访问目录

    C。委托权限:读取目录数据

    d。委派权限:阅读所有用户的完整个人资料

    e. 委派权限:登录并阅读用户个人资料

    F。应用程序权限:读取目录数据

    G。应用程序权限:阅读所有用户的完整资料

  7. 成功同意原生应用

  8. 成功同意 web api 应用程序
4

0 回答 0