问题标签 [microsoft-account]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
306 浏览

azure-ad-b2c - 使用 MSA 提供程序的 Azure B2C 的 MSAL 执行 POST 并且无法以静默方式获取令牌

将 MSAL js 库与 Azure B2C 和 Microsoft 帐户提供程序一起使用似乎无法使用 MSAL 项目中包含的示例。

MSA 似乎将最终的 HTTP POST 作为 authresp,因为带有 MSA 的 B2C 使用响应模式 = 表单发布,而 Google、Facebook 和 LinkedIn 的所有 authresp 都返回 GET 请求。这反过来会导致 MSAL 无法正确处理从 B2C/MSA 返回的不记名令牌。

这是 B2C 向 MSA 提出的请求,注意 response_mode=form_post https://login.live.com/oauth20_authorize.srf?client_id= ********-1b08-4d7c-b56d-9076584c3b71&redirect_uri=https: %2f%2flogin.microsoftonline.com%2fte%********-ab1c-4f9d-83b5-899025a2c3ca%2foauth2%2fauthresp&response_type=code&scope=openid+profile+email&response_mode=form_post&nonce=vkQ0vSBHFfYPydMhYl02ZA%3d%3d&state=eyJTSUQiOiJ4LW1zLWNwaW0tcmM6YTk0ZWYyMzktMDAwZi00YzIxLWE1MTAtOGNkMzk1YTU5NjI5IiwiVElEIjoiMDA4NjFiOTAtMzBhMy00NmZjLWJmMTgtOWE2MWY4Yjk3NTgyIn0

利用以下示例 - https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/devApps/VanillaJSTestApp-b2c/index.html

使用谷歌请求:

在此处输入图像描述

使用 Microsoft 帐户的请求:

在此处输入图像描述

登录后使用 MSA 运行 clientApplication.acquireTokenSilent(applicationConfig.b2cScopes) 会导致 - 未处理的拒绝 user_login_error: 需要用户登录

而对于 Google,它会返回一个正确的不记名令牌。

在 Microsoft 帐户配置上启用了隐式授权流,因此不确定是否缺少配置或者这是 B2C/MSA 或 MSAL 库的问题。

0 投票
1 回答
123 浏览

outlook - 无法在 Visual Studio Team Services 中添加 hotmail/outlook 用户

我正在尝试添加具有 Hotmail 帐户但团队基础显示以下错误的用户。

谁能告诉我如何在 VSTS 中添加另一个用户?

添加用户时收到以下消息

未找到身份。

0 投票
1 回答
1198 浏览

azure - 无法使用新门户在 Azure AD 中添加 Microsoft 帐户

我们的一些客户正在使用外部 Microsoft 帐户访问 AAD 服务。由于我们没有与他们的域相关联,而且他们中的一些人使用 Gmail 帐户,因此几乎不可能将他们的整个域添加到我们的 AAD。

旧门户 (manage.windowsazure.com) 具有以下屏幕:

manage.windowsazure.com AAD 添加用户

新门户有一个几乎无法工作的访客系统(添加外部访客会导致B2BError: Unable to invite user没有其他详细信息的通用 - 即使旧门户仍然有效),并且“新用户”只能创建具有注册域的用户。

有没有办法在新门户 (portal.azure.com) 中添加 Microsoft 帐户?

我现在问这个问题,因为这在技术上与如何将 Microsoft 帐户添加到 Azure Active Directory?,因为旧门户将于 2017 年 11 月 30 日停用,届时将无法再像这样工作。

0 投票
0 回答
403 浏览

c# - 无法使用带有 IdentityServer4 的外部身份提供程序读取用户的电子邮件地址

我正在尝试使用 Microsoft 帐户作为 IdentityServer4 的外部登录,我根据需要在 Microsoft 应用程序门户下配置了我的应用程序,我添加了一个 Web 平台并在 Delegated Permissions 下添加了“电子邮件”以便能够阅读它,这是我的代码访问 Microsoft 帐户:

当我运行应用程序时,一切正常,并且在用户输入他的用户名和密码后,会出现一条确认消息,授予我的应用程序访问电子邮件地址的权限,但是当我检查自定义ProfileService使用中检索到的声明时context.Subject.Claims,我没有找到任何索赔包含电子邮件地址,所以任何帮助我怎样才能得到它。

这是一个代码示例,显示了我如何访问 GetProfileDataAsync 方法中的声明:

基于@serpent5 的建议,我编写了一个示例代码来显示问题并将其上传到githug

示例代码包含 3 个项目

  • Fiver.Security.AuthServer(身份服务器)
  • Fiver.Security.AuthServer.Client(客户端)
  • Fiver.Security.AuthServer.Api(客户端想要访问的安全 API)

我从这篇文章中获取了原始代码

https://www.codeproject.com/Articles/1205745/Identity-Server-with-ASP-NET-Core

正如我上面所说,问题是我将电子邮件添加为范围,但登录后它没有作为 Microsoft 帐户的声明返回..

0 投票
1 回答
765 浏览

passport.js - 获取 Microsoft 用户的电子邮件地址

我想在login with Microsoft我的平均堆栈应用程序中添加一个按钮。所以我正在使用passport-microsoft

通过使用passport.authenticate('microsoft', { scope: ['User.Read'] }),我可以获得这些信息:@odata.context, givenName, surname, displayName id, userPrincipalName, businessPhones, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage. 对我来说, myuserPrincipalName是一个电子邮件地址,而 mymailnull.

我已经按如下方式设置了应用程序,但是如果我写passport.authenticate('microsoft', { scope: ['User.Read', 'email'] }),身份验证给了我一个“无效范围”错误。

在此处输入图像描述

有谁知道如何设置我的应用程序并请求获取用户的电子邮件地址?

0 投票
1 回答
344 浏览

c# - 使用 Microsoft 帐户与本地帐户备份 Bitlocker 恢复密钥

我正在尝试使用 Bitlocker 在 Windows 10 Pro 机器上加密我的硬盘驱动器。我到了需要通过 Microsoft 帐户、USB 驱动器备份我的恢复密钥或将其打印出来的地步。当我尝试使用 Microsoft 帐户路由时,它会要求我提供本地脱机帐户的凭据。我不愿意提供我的凭据,因为我听说本地帐户将在未经我同意的情况下转换为在线帐户,这是我不想要的。

所以我的问题是,我可以将我的 Bitlocker 恢复密钥备份到 Microsoft 帐户上,而不会将我的本地帐户偷偷转换为在线帐户吗?如果确实发生了这种情况,我可以将其转换回离线状态,同时仍将我的 Bitlocker 恢复密钥保留在我的 Microsoft 帐户中吗?

0 投票
1 回答
242 浏览

azure - 为融合应用设置刷新令牌的生命周期?

我正在开发一个融合应用程序(请参阅此处),我在其中使用 OAuth2 流程,获取访问 + 刷新令牌。我查看了可配置的令牌生命周期,但这看起来仅适用于自定义 AAD 应用程序(未融合)。

我想了解一些事情:

  1. Web 身份验证场景的刷新令牌(默认情况下)的生命周期是多少,我们可以安全地将令牌存储在服务器上?
  2. 有没有办法改变默认的生命周期?
0 投票
2 回答
2967 浏览

visual-studio - Visual Studio 2017.5:我们无法刷新帐户的凭据。未找到家庭租户

安装 Visual Studio 2017 的 .5-Update 后,我无法登录我的工作或学校帐户。我得到的是以下内容 在此处输入图像描述

我已经尝试修复“无法刷新访问令牌”-错误,但这并没有修复它......

0 投票
1 回答
746 浏览

microsoft-account - 如何将 Microsoft 帐户从 PUID 迁移/映射到 OIDC/OAuth

我有一个运行 RPS 的站点,以使用个人 Microsoft Live ID 帐户对用户进行身份验证。我现在正在使用 PUID 识别它们。

我现在正在修改此站点的身份验证以使用 OIDC/OAuth,这意味着我将不再获得用户的 PUID,而只是 nameidentifier 声明。

我如何将用户从 RPS (PUID) 迁移到 OIDC (nameidentifier)?就像使用 nameidentifier 查询 PUID 一样?

我再也找不到关于 PUID 或 RPS 的任何相关信息。

0 投票
1 回答
183 浏览

azure - Azure B2C 错误:在 MSAL 门户中创建新应用后应用程序出现故障

我试图找出在使用 v2 MSAL 端点创建 Azure B2C 应用程序时应该使用哪个管理员帐户。我观察到,当我使用时,过程和结果都不同:

  • 默认的 Office365 + AAD 管理员帐户
  • 一个长寿的 LiveID 帐户
  • 在 B2C 目录本身中创建的管理员

这些帐户中的每一个都用于在MSAL(融合?)门户中创建应用程序。

Azure AD 帐户

我有一个具有@[tenant].onmicrosoft.com 地址的 Office 365/AAD 管理员用户。

在此处输入图像描述

创建应用程序时,我看到一条警报,说此应用程序将在我的 AD 租户中创建(可能是 Office 365 管理员帐户,而不是连接的 b2c)

此应用程序将在用于管理您的 *.onmicrosoft.com 帐户的 Azure Active Directory 实例中注册

[截屏)

在此处输入图像描述

我想让学校或工作用户对 B2C 实例进行身份验证。但是模拟器给了我一个错误。

由于错误是基于用户无权访问该目录,我决定尝试使用新的管理员帐户重新创建应用程序,该帐户专门在该 b2c 租户目录中创建:

在此处输入图像描述

我创建了一个新的 @[tenant].onmicrosoft.comb2c 管理员用户,并尝试重新创建一个新的 appID/ClientID。我的想法的基础是,当我从我的 Azure+Office365 帐户中使用 Global Admin 时,在 B2C 租户中造成了混乱。

当我在 Azure 门户(与 MSAL 门户相反)中检查应用程序时,我收到此错误

在此处输入图像描述

这让我问:

  • 创建 MSAL v2 应用程序时应该使用哪个门户?
  • 我应该以谁的身份登录(Office365 AAD 管理员、启用 Dirsync 的 AAD 管理员、B2C 管理员、LiveID)
  • 我不应该以谁的身份登录?

我的意图是使用 MSAL 库对学校和工作用户进行身份验证。除了 Facebook 和 Google,这取决于登录策略。

MSALv2 应用门户上的 LiveID

为了完成我的组合测试,这是我在使用 LiveID 用户时获得的 MSALv2 门户。(之前的截图来自 AAD 或 B2C 用户)。请注意,部分标题是不同的,可能也暗示了功能上的差异。我想在前面的屏幕截图中确认Converged applications等于。My Applications

在此处输入图像描述