php - Azure AD OAuth 访问 token 请求:::400 - 错误请求

标签 php azure oauth office365

我有一个基于 Laravel 5/Socialite 构建的 php Web 应用程序,我正在尝试使用 windows azure AD OAuth 流程实现 SSO 解决方案,但我收到了通用的“400 错误请求错误” "在第二个 OAuth 请求访问 token 时。
对 Office 365 授权 URL 的第一个请求成功并向我的应用程序返回授权代码,但当我尝试获取用户访问 token 时它失败。

我已经检查并重新检查了我的请求,据我所知,它似乎是正确的:

POST https://login.windows.net/common/oauth2/token

标题

Host:login.windows.net
Content-type:application/x-www-form-urlencoded
User-Agent: wTrack/.001
Date: Thu, 21 May 2015 02:48:43 GMT 

body

client_id=1ad9f025-dfaf-4cb7-a9ff-29ea619bab44&
client_secret=<secret>&
code=<code>&
redirect_uri=https%3A%2F%2Fwtrack.dev%2Flogin%2Fmicrosoft&
grant_type=authorization_code

我已经关注这个问题有一段时间了。任何可以提供的帮助将不胜感激。

最佳答案

确保您的 redirect_uri 与您用于授权码请求的相同。另外,您可以尝试在请求正文中添加 resource 参数。

关于php - Azure AD OAuth 访问 token 请求:::400 - 错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30406414/

相关文章:

javascript - 创建 Google 登录页面以访问服务

javascript - OAuth 完整的 Javascript 访问权限,安全问题?

php - Yii 2 嵌套形式

java - 如何使 Azure 身份验证在 Java 6 上运行

带有计时器触发器的Azure函数: UnscheduledInvocationReason

ruby-on-rails - 帮助使用带有内置 Omniauth 支持的设计

PHP AWS SDK 抛出未知错误

php - html 标签内新行的正则表达式

php - 分配表 INSERT INTO 防止重复

c# - 使用 WS-MetadataExchange 为外部客户端和 WcfTestClient 公开 Service Fabric 中的 WCF/TCP 终结点