Ms office 包括;提示=同意;关于Office 365 OAuth资源授权请求;https://graph.microsoft.com/" 生成一个错误

Ms office 包括;提示=同意;关于Office 365 OAuth资源授权请求;https://graph.microsoft.com/" 生成一个错误,ms-office,office365,azure-active-directory,Ms Office,Office365,Azure Active Directory,我正在将我们现有的Office365 API使用转移到统一API(at) 出于中解释的原因,我需要在我的授权请求Url中包含prompt=approve,因此到目前为止,我的授权Url如下所示: https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3a%2f%2fgraph.windows.net%2f&prompt=consent&client_id=ec49c780-6767-46f2-8697-b

我正在将我们现有的Office365 API使用转移到统一API(at)

出于中解释的原因,我需要在我的授权请求Url中包含
prompt=approve
,因此到目前为止,我的授权Url如下所示:

https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3a%2f%2fgraph.windows.net%2f&prompt=consent&client_id=ec49c780-6767-46f2-8697-bdd816e42504&redirect_uri=https%3a%2f%2flogin.airhead.io%2fservices%2freply%2foffice365%2foauth&scope=UserProfile.Read+Calendars.Read+Files.Read+Sites.Read.All+Mail.Read&response_type=code

…这(在经过授权和同意后)让我回到类似以下的地方:

https://login.airhead.io/services/reply/office365/oauth?code=AAABAAAAiL9Kn2Z27UubvWFPbm0gLeSvP6UG3gEwceCQ8hU_03hUjXRvPUfs_Y-324CUR0RDFE-qdNIsD0on-DjkgoszvL4PKH7_qkghxtogczgeJ7GWCudpvohh86Pjct3VAB94WPT8PKDM46HHVPEBN6JDRK5VibyDWXS2R8DLRMJQIYIBGZDSOUCDYMEBYFC-V39sQ9WFSx5ErjIeHvZ_QFZB1SDJT-IEQJPTw7H5BZPVFJQHuQN3TvL37Up4ZKWx5FB0ZMK_2.一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市一个城市的一个城市的一个城市的一个城市的一个城市的一个城市的一个城市一个城市一个城市一个城市的一个城市一个城市一个城市的一个城市的一个城市一个城市一个城市一个城市一个城市一个城市的城市的城市的城市的一个城市一个城市一个城市一个城市一个城市一个城市一个城市一个城市一个城市的城市的城市的P45JFJNDRVNUBV9LIPTOKqpe99xosnHMK70H171M5BJVNHGGAA&session_state=8494e152-60ab-4ddc-a247-ee55798e0595

…这使我可以继续流动,使用针对旧
https://graph.windows.net/
资源。一切都好

但是,在将授权Url上的
资源
参数值修改为
https://graph.microsoft.com/
针对新的统一API进行授权,即:

https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3a%2f%2fgraph.microsoft.com%2f&prompt=consent&client_id=ec49c780-6767-46f2-8697-bdd816e42504&redirect_uri=https%3a%2f%2flogin.airhead.io%2fservices%2freply%2foffice365%2foauth&scope=UserProfile.Read+Calendars.Read+Files.Read+Sites.Read.All+Mail.Read&response_type=code

…我收到一个错误响应:

https://login.airhead.io/services/reply/office365/oauth?error=access_denied&error_description=AADSTS65005%3a++客户端+应用程序+已+请求+访问+资源+%27https%3a%2f%2f graph.microsoft.com%2f%27。+此+请求+已+失败+,因为+客户端+未+在+其+所需资源访问+列表中指定+此+资源+。%0D%0ATrace+ID%3a+d9cc9773-feb5-42b4-9414-eaf64620fc0f%0D%0A相关性+ID%3a+ea1f37de-35bb-4b41-af49-c877dda75d11%0D%0ATimestamp%3a+2016-01-18+13%3a15%3a18Z

..说明为“AADSTS65005:客户端应用程序已请求访问资源“”。此请求失败,因为客户端未在其requiredResourceAccess列表中指定此资源”

如果我尝试相同的授权Url(针对资源
https://graph.microsoft.com/
再次),但这次请删除
提示符=同意
参数,即:

https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3a%2f%2fgraph.microsoft.com%2f&client_id=ec49c780-6767-46f2-8697-bdd816e42504&redirect_uri=https%3a%2f%2flogin.airhead.io%2fservices%2freply%2foffice365%2foauth&scope=UserProfile.Read+Calendars.Read+Files.Read+Sites.Read.All+Mail.Read&response_type=code

…它起作用了


此时的文档仍然表明
prompt=approve
有效,文档是否错误(即,我不能将
prompt=approve
与资源
https://graph.microsoft.com/
)还是这是一个bug?

事实证明,graph.microsoft.com的v1.0版有一套全新的作用域,预览时不需要的。将这些作用域添加到我的应用程序清单解决了此问题。(脸掌)