【问题标题】:Sites.Selected permission stopped working this morningSites.Selected 权限今天早上停止工作
【发布时间】:2022-06-23 11:09:08
【问题描述】:

我们有一个严重依赖 Graph API 的多租户应用程序。我们通过 Messages API 访问这两个邮箱,并通过 Files API 访问 Sharepoint 站点。大多数客户端使用非常宽松的访问模型来获得我们应用程序中可用的更多功能。少数人对访问有严格的要求,对于那些我们只允许访问特定的共享点站点的人。对于这个站点,我们已经注册了另一个 AppId 来使用站点。选择客户端全局管理员允许使用 PowerShell 访问我们的应用程序的权限

直到今天早上,所有对文件 API 的请求都返回“403 Forbidden”,而 C# SDK 返回“访问被拒绝”。

我已要求客户端执行 PowerShell 命令以验证我们是否仍然可以访问他们的 Sharepoint 站点:

Get-PnPAzureADAppSitePermission -AppId 'xxxxxxxxxxxx' 

但他们都收到相同的错误消息:

Get-PnPAzureADAppSitePermission: Operation Failed

使用的 Pnp.PowerShell cmdlet 是 1.10

有人知道为什么 MS Graph 会发生这种情况,或者 PS 错误是否与 Graph 错误有关? 微软改变了什么?

【问题讨论】:

    标签: sharepoint sharepoint-online msgraph


    【解决方案1】:

    这已被 MS 确认为意外服务问题,可跟踪为 SP381039

    标题:用户在使用 SharePoint Online 图形 API 时可能会看到“拒绝访问”错误

    用户影响:用户在使用 SharePoint Online 图形 API 时可能会看到“拒绝访问”错误。

    当前状态:我们发现身份验证功能的组件出乎意料地不存在于某些用户的环境中,从而导致 Graph API 访问请求失败。我们正在受影响的环境中重新部署受影响的功能以修复影响。与此同时,我们正在调查最近的特性更改,以确定组件意外不存在的原因。

    下次更新时间:世界标准时间 2022 年 5 月 17 日星期二下午 5:00


    来自 MS 的最新更新,于 5 月 17 日 16:45 收到:

    当前状态:我们已经确认,最近的功能部署错误配置已阻止与身份验证功能相关的组件在一组客户环境中可用,这会在以下情况下产生“拒绝访问”错误使用 SharePoint Online 的图形 API。我们已经确认,我们将身份验证功能重新部署到一些受影响的环境已经解决了影响。我们现在正在将该功能重新部署到所有受影响的剩余环境中,这有望解决影响。

    影响范围:此问题可能会影响您尝试使用 SharePoint Online 图形 API 的任何用户。

    根本原因:最近的功能部署错误配置导致身份验证功能无法在一组客户环境中使用,从而产生影响。

    下次更新时间:世界标准时间 2022 年 5 月 17 日星期二晚上 9:30

    【讨论】:

    • 感谢您提供此信息。我查看了我的租户的 admin.microsoft.com,但我的服务运行状况中没有出现该问题。那是你看到id的地方吗?想知道我是否需要通过我的服务健康报告它(顺便说一下肯定看到了问题)。
    【解决方案2】:

    新西兰时间周二上午完全相同。直接使用 C# 代码/Postman 和 PowerShell。

    我已经向 Microsoft 记录了一张票,因为我的猜测(没有偶然性)是 PNP 上的代码回归。如果我有任何消息,我会在这里更新。

    我们有 2 个应用程序(测试和生产),都在周二早上开始失败,出现 403 / 访问被拒绝消息。

    当我尝试使用 获取 PnPAzureADAppSitePermission 或者 授予-PnPAzureADAppSitePermission

    Powershell 说:“不支持操作”

    全文

    Grant-PnPAzureADAppSitePermission : {"error":{"code":"notSupported","message":"Operation not supported","innerError":{" 日期":"2022-05-16T23:39:16","re​​quest-id":"xxxx-azureappid-yyyy","client-request-id":"xxxx-azureappid-yyyy"}}} 在 line:8 char:1

    • Grant-PnPAzureADAppSitePermission -AppId $appId -DisplayName 'TenantName...
    •   + CategoryInfo          : NotSpecified: (:) [Grant-PnPAzureADAppSitePermission], HttpRequestException
        + FullyQualifiedErrorId : System.Net.Http.HttpRequestException,PnP.PowerShell.Commands.Apps.GrantPnPAzureADAppSite
      Permission
      

    【讨论】:

    • 我已致电 Microsoft 支持。他们告诉我其他客户报告了相同的错误消息,他们已将我的电话上报给项目工程 (PG) 组。如果我得到任何更新,我会在这里发布。
    • 只是出于好奇 - 您在哪里/如何向 Microsoft 支持报告此问题?最后我检查你只能使用 SO
    【解决方案3】:

    今天早上我测试这个时,一切都回到了新西兰时间星期五的样子。

    我通过记录的工单从 Microsoft 那里得知“PG 团队已从后端恢复更新”。昨晚没用,但今天早上我们又恢复正常了。

    我希望你的租约也能回来。如果可以,如果不记录 Microsoft 票证。我使用“新服务请求”菜单项通过https://admin.microsoft.com/Adminportal/Home?source=applauncher#/support/requests 页面执行此操作。由于我们与 Microsoft 的合同,我们拥有此功能。

    【讨论】:

    • 是的,它们都再次工作了。感谢反馈
    • 我们的租客今天早上又来了。谢谢大家。
    【解决方案4】:

    我仍然面临这个问题。

    我已经注册了一个具有“Sites.Selected”权限的应用程序。并使用 PnP PowerShell cmdlet 授予角色

    Grant-PnPAzureADAppSitePermission -AppId 'AzureAppIdwithSitesdotselectedpermission' -DisplayName 'App Name here' -Site 'https://tenantname.sharepoint.com/sites/sitename' -Permissions Read
    

    有了这个我可以得到不记名令牌,但是当我尝试调用搜索 API 查询 https://tenantname.sharepoint.com/_api/search/query?querytext=%27test%27

    出现错误 - 未找到用户或应用上下文

    如果有人有答案请回复。

    【讨论】:

      猜你喜欢
      • 2014-02-22
      • 2012-07-15
      • 1970-01-01
      • 1970-01-01
      • 2015-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-03
      相关资源
      最近更新 更多