SharePoint Online Webhook 订阅:“访问被拒绝”错误?

问题描述 投票:0回答:2

我一直在关注关于如何创建 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+站点+并+选择+选项+自动登录。”

我已尝试以下所有方法:

  1. 进入 SharePoint 以启用我的 Azure AD 应用程序的 Sites.Manage.All 权限
  2. 重新授权具有不同访问级别的多个帐户
  3. 验证 ngrok、我的 webhook 接收器和 Azure AD 应用程序都在运行,并且所有连接字符串/客户端 ID/机密均有效。

我是否缺少有关我的 Azure AD 应用程序的 SharePoint 权限的其他内容,或者这是另一个问题?

azure sharepoint webhooks
2个回答
0
投票

我尝试在我的环境中重现其工作正常,通过 Postman 将访问令牌添加到 SharePoint 列表的 Webhook 订阅

首先,检查标题中是否添加了 content-typeaccept enter image description here

由于某些安全问题,邮递员未经身份验证且无权从 SharePoint 获取数据,因此可能会导致此错误。为此,请尝试使用末尾的 URL 修改来注册应用程序

/_layouts/15/appregnew.aspx

样品:

https://imu.sharepoint.com/sites/mirror/_layouts/15/appregnew.aspx 

希望您能够访问,请尝试按如下方式注册您的应用程序: enter image description here

在这里,您需要向该特定应用程序授予权限,例如完全控制权限,如下截图链接: enter image description here

在App的权限请求XML中申请权限如下:

enter image description here 并且,点击创建,弹出窗口会显示信任它。单击信任它站点设置选项卡如果您单击该网站集应用程序权限,您的邮递员右侧将显示客户端ID@租户ID enter image description here

  • 要获取访问令牌,请单击启动板 -> 创建请求 ->

    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
enter image description here

最后,我在标头和值承载访问令牌中添加了授权确保记住承载和您的访问令牌之间的空格我成功获得结果,没有任何访问被拒绝错误。 enter image description here

供您参考:

OfficeDev/培训内容


0
投票

重新审视这些事情

  1. 在 AD 中注册的应用程序具有 AllSites.Manage 权限(委派)并授予管理员同意。
  2. 通过邮递员获取访问令牌时,使用范围为 https://yourtenant.sharepoint.com/.default
  3. 标头:Content-Type = application/json,Accept = application/json;odata=verbose
© www.soinside.com 2019 - 2024. All rights reserved.