加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

azure – 如何从SPA应用程序中的Web API访问Graph API

发布时间:2020-12-14 18:39:31 所属栏目:资源 来源:网络整理
导读:我有一个与WebAPI对话的Angular应用程序,用户通过Azure Active Directory进行身份验证 我在这里跟踪了https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi的示例,并且能够针对AD对用户进行身份验证并将其传递给Web AP
我有一个与WebAPI对话的Angular应用程序,用户通过Azure Active Directory进行身份验证

我在这里跟踪了https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi的示例,并且能够针对AD对用户进行身份验证并将其传递给Web API.

但是,我想访问Web API中的Graph API并获取当前用户配置文件信息.我该如何设置?

更新以提供有关设置的更多上下文:

我有一个网站(site.domain1.com),它承载制作SPA应用程序的html和javascript文件.我在api.domain2.com上托管了Web API.使用OAAL隐式流与ADAL.js和angular-adal对Azure AD进行身份验证.我想在SPA中进行身份验证以获取API的accessToken.我希望在API中作为查询Graph API的请求的一部分,以获取有关当前用户登录的更多信息.

我能够获得API的accessToken,并且它当前生成了Claim Principal.问题是使用Web API中的当前标识查询Graph API.

更新:

我不想将管理员权限授予Web API,但我更愿意将用户同意仅从浏览器转发到网站和Web api的“读取用户配置文件”.

我使用类似的方法来代表https://github.com/Azure-Samples/active-directory-dotnet-webapi-onbehalfof的代表

它适用于我的测试AD并且不适用于生产AD的问题.说用户需要在使用Graph Api之前集中应用程序.(对于生产AD我只有用户可以添加用户权限但不能添加应用程序权限.我的猜测是该方案工作我需要AD的全局管理员首先集中).最终,我最终将Web站点和Web API的Azure AD应用程序合并在一起,并使用与Bootstrap Tokens相同的On Behalf Of方法.但我想知道如何使它与2个应用程序正常工作.

解决方法

权限可在Azure中的应用程序配置页面中进行配置,您可以选择要让应用程序访问的内容.

至于确认,您作为管理员可以选择.用户接受与您的应用共享数据或管理员确认租户下的所有数据.

这是正确的方法.我的前端和后端就是这样工作的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读