如何使用 MSAL-react 获取任何用户的 oid?

问题描述 投票:0回答:1

我是 MSAL 新手,正在开发 Office js React 加载项,该加载项可以免费下载并使用“基本”功能,但需要订阅“专业”功能。订阅-购买工作流程最终将为我提供一个由 oid 提供的订阅用户数据库。

在我的加载项中,我需要获取已登录用户的 oid(可以是任何 Office 用户、个人、工作或学校用户),以便我可以根据订阅者列表进行检查并显示/隐藏 '专业版的功能。 MSAL 教程 ms-identity-ciam-javascript-tutorial 对我来说非常有用,但前提是我使用租户已知/访客的 ID 登录。

该示例本身显示“此示例不适用于个人 Microsoft 帐户。”,那么我需要更改什么才能做到这一点?

我已将我的 Azure 应用程序更改为具有“signInAudience”:“AzureADandPersonalMicrosoftAccount”,但是当我尝试使用个人 MS 帐户登录时,我收到帐户 ID 提示,但随后出现重定向 uri 不是我的错误已列出该应用程序。事实上,事实并非如此;注册的应用程序重定向是“http://localhost:3000/”,但登录提示中的 URL 会转到:

https://login.live.com/oauth20_authorize.srf?scope=openid+profile+email+offline_access&response_type=code&client_id=51483342-085c-4d86-bf88-cf50c7252078&response_mode=form_post&redirect_uri=https%3a%2f%2foffaddins.ciamlog在。 com%2fcommon%2ffederation%2foauth2msa...

我如何获取登录者的 oid(如果他们已经在浏览器中登录到 MS),或者如果他们没有登录,则弹出登录提示?

azure-ad-msal msal.js msal-react msal
1个回答
0
投票

您需要设置一个客户租户,并配置登录和注册用户流程。

© www.soinside.com 2019 - 2024. All rights reserved.