首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MS获取访问令牌w/多因素身份验证所需

MS获取访问令牌w/多因素身份验证所需
EN

Stack Overflow用户
提问于 2020-04-17 13:00:31
回答 3查看 7.7K关注 0票数 3

我试图用Microsoft使用Postman来“获取用户访问令牌”;然而,我的组织最近启用了多因素的auth,这个调用现在失败了,声明:

"error": "invalid_grant",

"error_description": "AADSTS50076: Due to a configuration change made by your administrator, or because you moved to a new location, you must use multi-factor authentication to access...

使用Postman实现MS Graph的Microsoft文档写得很好,但缺少明确的说明如何将第二个因素传递给请求。

错误指向https://login.microsoftonline.com/error?code=50076,但这只是提供了相同的信息。

我有一个MS身份验证程序,它给了我这个密钥/第二个因素;但是,我不知道如何将它添加到body/headers中。--我正在试图找到传递附加安全令牌的特定密钥名(我尝试过“令牌”、“pcToken”、“密钥”等)。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-04-23 17:00:16

我也陷入了同样的困境,下面是我为解决这个问题所做的努力:

首先,我得到了以下信息:

https://github.com/microsoftgraph/microsoftgraph-postman-collections/issues/4

您需要在邮递员中使用OAuth 2.0授权。使用相同的GET请求,转到授权->,将类型更改为“OAuth 2.0”,然后单击“获取新访问令牌”。

在那里,您可以输入自己的详细信息:(用自己的TenantID替换)

屏幕截图

票数 4
EN

Stack Overflow用户

发布于 2020-04-20 02:42:54

MFA不支持用户名密码身份验证,因为MFA需要交互。但是,如果需要使用用户名密码身份验证来登录,则不存在交互。

请参见用户名密码认证

需要做MFA的用户将无法登录(因为没有交互)。

票数 1
EN

Stack Overflow用户

发布于 2020-07-31 12:55:23

上面的答案并不描述任何通过代码传递的与MFA相关的内容.MFA首先需要使用代理身份验证,其中MS Authenticator应用程序充当代理。如果您集成了适当的库(ADAL,MSAL),那么您的代码将能够正确地与代理交互。

在Android和iOS上,代理程序启用:

  • 单点登录(SSO)您的用户不需要登录到每个应用程序。
  • 设备标识(通过访问设备证书,该证书是在设备加入工作场所时在设备上创建的)。为此,我们使用内置管理的设备。
  • 应用程序标识验证(它真的叫我outlook吗?)当应用程序调用代理时,它传递其重定向url,由代理验证它的工作方式:例如,在iOS上,重定向URL是ms-word://com.msft.com,代理解析并获取appId (在//之后),并验证它与调用应用程序的appId相同,它知道(通过操作系统)。在Android上,重定向URL具有以下形式: msauth://com.msft.word/。

要启用这些特性之一,应用程序开发人员需要在平台参数中将UseBroker布尔值设置为true。他们还需要实现一个委托,以响应代理调用应用程序,就像在Android和iOS上特定于代理的平台参数属性中所描述的那样。

有关代理示例,请参阅MS文档:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61272303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档