【问题标题】:Azure AD B2C: Unable to get token with authorization codeAzure AD B2C:无法使用授权码获取令牌
【发布时间】:2019-05-03 22:49:15
【问题描述】:

我目前正在关注this 为 azure 函数设置授权的指南。我目前正在尝试与我的网络应用程序分开测试提琴手中的身份验证部分,以确保我可以获得有效的令牌。我能够成功检索授权码,但是在那之后,我需要发布一些数据以将授权码交换为令牌。尝试这样做时,我收到一条带有消息的 502:DNS Lookup for "mytenantname.onmicrosoft.com" failed. System.Net.Sockets.SocketException No such host is known,就好像主机根本不存在一样。我在端点的帖子如下所示,其中B2C_1_FunctionsPlaygroundSignInRegister 是我的用户流的名称:

POST https://mytenantname.onmicrosoft.com/oauth2/v2.0/token?p=B2C_1_FunctionsPlaygroundSignInRegister HTTP/1.1

User-Agent: Fiddler

Content-Type: application/x-www-form-urlencoded

Host: mytenantname.onmicrosoft.com

Body:grant_type=authorization_code&client_id=MyApplicationIdForTheAzure-AD-B2C-ap-here&code=myCodeHere&redirect_uri=jwt.ms

作为参考,这是我发送的工作获取请求,我可以在浏览器中输入,提示登录/注册屏幕,并在登录后返回授权码:

https://mytenantname.b2clogin.com/tfp/mytenantname.onmicrosoft.com/B2C_1_FunctionsPlaygroundSignInRegister/oauth2/v2.0/authorize?client_id=yApplicationIdForTheAzure-AD-B2C-ap-here&nonce=2&redirect_uri=https://functionapi.azurewebsites.net/.auth/login/aad/callback&scope=https://mytenantname.onmicrosoft.com/api/read&response_type=code 

有人可以指出我在哪里出错了吗?我现在在这个问题上花了很多时间,但没有想法。

【问题讨论】:

    标签: azure azure-active-directory


    【解决方案1】:

    您的 POST url 和 Host 标头错误。

    查看本节 -

    OAuth 2.0 authorization code flow in Azure Active Directory B2C

    POST fabrikamb2c.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_sign_in HTTP/1.1
    Host: https://fabrikamb2c.b2clogin.com
    

    注意主机头。这意味着您的 Fiddler 请求应该是这样的:

    POST https://mytenantname.b2clogin.com/mytenantname.onmicrosoft.com/oauth2/v2.0/token?p=...
    Host: mytenantname.b2clogin.com
    

    附:对于您正在尝试做的事情,这比 Fiddler 要好得多- https://oauthdebugger.com/

    【讨论】:

    • 啊,我读过那篇文章的次数,我错过了这篇文章。谢谢。现在看起来我需要提供一个客户端密码(我假设这个密码是在函数应用程序而不是天蓝色广告应用程序上设置的)但你已经解决了手头的问题。尽可能接受
    • 这是 Azure AD B2C 中应用定义下的秘密(又名 key)。
    猜你喜欢
    • 2016-11-30
    • 2017-04-20
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    相关资源
    最近更新 更多