【发布时间】:2021-02-10 12:29:30
【问题描述】:
主要问题
我一直致力于将 Microsoft Graph REST API 集成到 Angular(版本 10)应用程序中。我已按照following tutorial 给出的说明将 Angular 应用程序连接到 Microsoft Graph 并通过 Azure AD 登录用户(通过在应用程序注册中注册应用程序)。
我每一步都按照教程进行操作,现在我决定通过 HTTP 扩展应用程序 getting the Teams chats I am a member of。我决定通过将调用结果打印到浏览器控制台来创建一个简单的测试,但是当我尝试调用它时,会出现 HTTP 403 响应(“无法获取用户的许可证信息。确保用户有分配给他们的有效 Office365 许可证。”)我尝试使用学生 Office 365 帐户和我的个人 Microsoft 帐户执行此操作,但我继续收到相同的 HTTP 响应。
尝试的解决方案
在 Graph Explorer 中进行测试时,会收到正确的响应。我已将学生帐户添加到个人帐户为全局管理员的 Azure AD 租户。
我曾尝试在方法截图中调用aquireTokenPopup、aquireTokenSilent和aquireTokenRedirect,但无济于事(我仍然收到403 HTTP Forbidden响应。)我也看过通过 docs.microsoft.com 上列出的文档,并查看了此 403 响应的不同文档,但我无法确定 403 响应可能意味着什么 - 学生帐户有一个有效的 Office 365 租户,而我的个人帐户没有,我得到相同的响应。
为什么我会收到此响应,即使我已在弹出窗口中授予权限,以及配置为允许 Azure 中的端点?
是否配置错误?
我是否使用了错误的身份验证类型? (我应该使用 Azure AD B2C 吗?)
截图
【问题讨论】:
-
请不要添加截图。调试并获得可接受的答案是不合适的。
-
@Akif“不适合调试并获得可接受的答案”?能否请您详细说明
-
如果我们想重现您的代码并尝试查找错误,我们如何从您的屏幕截图中复制和粘贴?
-
使用jwt.ms 解析您的访问令牌并提供屏幕截图。
-
您必须使用工作或学校帐户,它不支持微软个人帐户! i.stack.imgur.com/p5bk1.png
标签: angular azure-active-directory microsoft-graph-api azure-ad-b2c microsoft-graph-teams