Microsoft Graph - 应用未经授权创建 Sharepoint 列表订阅
Microsoft Graph - App is unauthorized to create Sharepoint List subscription
我努力制作具有 ClientCredential 身份验证流程的应用程序以在 SharePoint 列表上创建订阅。
请求:
var subscription = new Subscription
{
ChangeType = "updated",
NotificationUrl = "{validNotificationUrl}",
Resource = "sites/root/lists/{listId}",
ExpirationDateTime = DateTime.UtcNow.AddDays(2),
ClientState = "{clientState}"
};
subscription = await _graphClient.Subscriptions.Request().AddAsync(subscription);
响应:
Unauthorized 403
{
"error": {
"code": "ExtensionError",
"message": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Access denied. You do not have permission to perform this action or access this resource.]",
"innerError": {
"date": "2020-08-04T13:01:27",
"request-id": "c480fa5d-4bbd-44a1-9f86-587548a29a19"
}
}
我已经检查了请求 access_token,它具有所需的权限(Sites.ReadWrite.All、Sites.Manage.All 根据 documentation应该够了)。
阅读订阅和创建列表适用于应用程序。
我开始尝试不同的配置,试图找出问题所在,并设法:
- 让应用在用户资源上创建订阅。
- 让委派用户在列表上创建订阅
我感到很迷茫,因为我给了应用程序比委托用户更多的权限,它仍然得到未经授权的 403,响应错误并没有说明如何解决这个问题。
SharePoint 列表订阅是否有任何配置需要注意仅用于应用程序身份验证?
该服务当前遇到一个问题,即 app-only 列表和驱动器订阅在不应该访问的情况下被拒绝访问。该团队目前正在努力解决该问题。我建议您在我们调查问题时关注 this issue,或者您打开支持票,要求 link 您的 ICM 200246697 票。
我努力制作具有 ClientCredential 身份验证流程的应用程序以在 SharePoint 列表上创建订阅。
请求:
var subscription = new Subscription
{
ChangeType = "updated",
NotificationUrl = "{validNotificationUrl}",
Resource = "sites/root/lists/{listId}",
ExpirationDateTime = DateTime.UtcNow.AddDays(2),
ClientState = "{clientState}"
};
subscription = await _graphClient.Subscriptions.Request().AddAsync(subscription);
响应:
Unauthorized 403
{
"error": {
"code": "ExtensionError",
"message": "Operation: Create; Exception: [Status Code: Forbidden; Reason: Access denied. You do not have permission to perform this action or access this resource.]",
"innerError": {
"date": "2020-08-04T13:01:27",
"request-id": "c480fa5d-4bbd-44a1-9f86-587548a29a19"
}
}
我已经检查了请求 access_token,它具有所需的权限(Sites.ReadWrite.All、Sites.Manage.All 根据 documentation应该够了)。 阅读订阅和创建列表适用于应用程序。
我开始尝试不同的配置,试图找出问题所在,并设法:
- 让应用在用户资源上创建订阅。
- 让委派用户在列表上创建订阅
我感到很迷茫,因为我给了应用程序比委托用户更多的权限,它仍然得到未经授权的 403,响应错误并没有说明如何解决这个问题。
SharePoint 列表订阅是否有任何配置需要注意仅用于应用程序身份验证?
该服务当前遇到一个问题,即 app-only 列表和驱动器订阅在不应该访问的情况下被拒绝访问。该团队目前正在努力解决该问题。我建议您在我们调查问题时关注 this issue,或者您打开支持票,要求 link 您的 ICM 200246697 票。