0

我们的应用程序本月停止授权新用户连接到 Bing Ads。我们尝试调试,并了解到我们需要升级到 Microsoft 标识平台端点。我们的旧应用程序使用 login.live.com,我们一直收到错误“远程服务器返回错误:(400) 错误请求。”

我们在 portal.azure.com 中注册了一个新应用程序,从 powershell 运行快速入门,并使用测试本机应用程序成功检索了刷新令牌。作为下一步,我们

  1. 在 portal.azure.com 中使用新的 clientID 创建了一个新应用程序。将身份验证类型分配为 Web 而不是 Native,并使用我们的应用程序重定向 URI

  2. 在 Quick Start 测试文件 Get-Tokens-Production.ps1 中,我们替换了 clientID 和 redirectURI,并添加了 clientsecret 变量

  3. 使用新值运行快速启动 powershell 脚本

...现在我们不断收到这条消息,上面写着“代码已过期”。我正在将 code=parameter 从浏览器复制到控制台,就像我们在本地应用程序测试中所做的那样,我可能需要 15 秒来复制和粘贴。有人可以帮助解释我们如何测试并获得有效的刷新令牌吗?

Invoke-WebRequest : {"error":"invalid_grant","error_description":"AADSTS70000: 为 'code' 参数提供的值无效。代码已过期。\r\n跟踪 ID: 348801cc-9dce-4147- aded-d52910f93000\r\n相关 ID: 2438635c-7cd6-4a3f-9cdf-d3206db0409b\r\n时间戳: 2019-12-04 19:47:05Z","error_codes":[70000],"timestamp":"2019- 12-04 19:47:05Z","trace_id":"348801cc-9dce-4147-aded-d52910f93000","correlation_id":"2438635c-7cd6-4a3f-9cdf-d3206db0409b","e rror_uri":"https: //login.microsoftonline.com/error?code=70000"}

4

1 回答 1

0

当你在浏览器中获取授权码时,它的生命周期其实很短,只有10分钟左右,而且授权码只能使用一次!当您再次尝试获取访问令牌或刷新令牌时,您必须再次向浏览器请求新的授权码。

如果要获取刷新令牌,则需要添加offline_accessscope.

于 2021-02-28T15:03:30.877 回答