我一直在关注关于如何创建 SharePoint Webhook 订阅的 this 教程,在验证并获取访问令牌后,实际上尝试通过 Postman 发送将 Webhook 订阅添加到 SharePoint 列表的请求,给我一个“访问是拒绝 HRESULT:0x80070005”错误:
进入 Postman 控制台看到更详细的错误消息显示“917656; Access+denied.+Before+opening+files+in+this+location%2c+you+must+first+browse+to+the+web+站点+并+选择+选项+自动登录。”
我已尝试以下所有方法:
我是否缺少有关我的 Azure AD 应用程序的 SharePoint 权限的其他内容,或者这是另一个问题?
我尝试在我的环境中重现其工作正常,通过 Postman 将访问令牌添加到 SharePoint 列表的 Webhook 订阅
首先,检查标题中是否添加了 content-type 和 accept
由于某些安全问题,邮递员未经身份验证且无权从 SharePoint 获取数据,因此可能会导致此错误。为此,请尝试使用末尾的 URL 修改来注册应用程序
/_layouts/15/appregnew.aspx
样品:
https://imu.sharepoint.com/sites/mirror/_layouts/15/appregnew.aspx
希望您能够访问,请尝试按如下方式注册您的应用程序:
在这里,您需要向该特定应用程序授予权限,例如完全控制权限,如下截图链接:
在App的权限请求XML中申请权限如下:
并且,点击创建,弹出窗口会显示信任它。单击信任它站点设置选项卡如果您单击该网站集应用程序权限,您的邮递员右侧将显示客户端ID@租户ID
要获取访问令牌,请单击启动板 -> 创建请求 ->
https://accounts.accesscontrol.windows.net/Tenant ID()/tokens/OAuth/2/
尝试在“正文”选项卡中添加值,例如 grant_type - client_credentials Client_id - ClientID@TenantID Client_secret - 客户端秘密 资源 - 资源/siteDomain@TenantID
确保在您的网址中删除 TenanID 中的括号,并且站点域位于您的网址中,如
***.sharepoint.com
最后,我在标头和值承载访问令牌中添加了授权确保记住承载和您的访问令牌之间的空格,我成功获得结果,没有任何访问被拒绝错误。
供您参考:
重新审视这些事情