Office 365 SharePoint v1.0 API授权问题

时间:2014-11-11 19:41:11

标签: sharepoint office365

我有一个使用Office 365 SharePoint预览API的客户端应用。最近(截至2014年10月),Microsoft发布了版本1.0 of that API。预览API使用的身份验证步骤不再适用于1.0版。

演示我创建的问题a short node.js script。该脚本执行以下操作:

  • 启动浏览器授权。提供重定向到localhost的URL,并启动服务器以捕获重定向后授权
  • POSThttps://login.windows.net/common/oauth2/token获取访问令牌
  • GET到Office 365发现服务以获取SharePoint API端点
  • POSThttps://login.windows.net/common/oauth2/token使用刷新令牌获取新的访问令牌
  • GET到SharePoint API端点以获取文件列表

该脚本可以与API的预览API和版本1.0一起使用。它能够从预览API获取文件的JSON列表,但是对于版本1.0(在最后一次调用中)失败了以下内容:

{
    "error": {
        "code": "-2147024891, System.UnauthorizedAccessException",
        "message": "Access denied. You do not have permission to perform this action or access this resource."
    }
}

有人看到调用顺序有什么问题吗?

take a look at the sample script了解详情。

2 个答案:

答案 0 :(得分:0)

感谢您与我们保持联系,我们非常感谢您的反馈。正在推出修复程序,以解决非管理员通过Files API访问文件/文件夹的问题。如果您仍处于开发/探索阶段,可以考虑采取以下措施取消阻止:

一个。暂时将用户添加为我的站点主机网站上的管理员

湾暂时获取应用的AllSites权限

我会在生产中修补问题后更新此主题,这应该很快就会发生。

答案 1 :(得分:0)

在查看脚本时,看起来您使用的是硬编码资源ID(“Microsoft.SharePoint”),当我相信新的(“domain-my.sharepoint.com”)时。如果使用多租户,它将是动态的,并且可以从发现调用中获得,并且可能是您每次都应该使用的ID。如果您有单租户,那么我想您可以对其进行硬编码。