You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Microsoft Graph API守护程序获取管理员授权并配置特定SharePoint站点权限

为单租户Web应用授予SharePoint特定站点只读权限的操作步骤

核心说明

添加Sites.Selected权限后点击管理员同意,不会直接授予应用对整个租户所有站点的访问权,这个权限只是提供了绑定特定站点的框架,必须后续手动指定具体站点的权限范围。


步骤1:完成Sites.Selected权限的添加与管理员同意

  1. 进入Azure AD的「应用注册」,找到你的单租户应用
  2. 左侧栏选择「API权限」,点击「添加权限」
  3. 选择「Microsoft Graph」>「应用权限」,搜索并勾选Sites.Selected,点击「添加权限」
  4. 返回「API权限」页面,点击「授予管理员同意(Default Directory)」——此操作仅确认应用可使用Sites.Selected权限体系,不涉及具体站点访问权

步骤2:为应用绑定特定SharePoint站点的只读权限

Azure Portal无可视化配置界面,需通过PowerShell或Graph API操作:

方式1:PowerShell(需SharePoint Online管理员权限)

  1. 安装并连接SPO模块:
Install-Module -Name Microsoft.Online.SharePoint.PowerShell -Force
Connect-SPOService -Url https://<你的租户域名>-admin.sharepoint.com
  1. 获取必要参数:
    • 应用对象ID:在Azure AD应用注册的「概述」页面查看
    • 目标站点ID/URL:可通过SharePoint站点的「设置>网站信息>查看全部网站信息」获取,或用Get-SPOSite命令查询
  2. 授予只读权限:
Set-SPOsite -Identity <站点ID或完整URL> -AppPrincipalId <应用对象ID> -Permissions Read

方式2:Microsoft Graph API(需Sites.Manage.All或Sites.FullControl.All应用权限)

发送POST请求:

POST https://graph.microsoft.com/v1.0/sites/<站点ID>/permissions

请求体(JSON格式):

{
  "roles": ["read"],
  "grantedToIdentities": [
    {
      "application": {
        "id": "<应用对象ID>",
        "displayName": "<你的应用名称>"
      }
    }
  ]
}

测试环境自建SharePoint站点的方法

若测试账号无可用站点,可自行创建:

  1. 登录SharePoint Online管理员中心:https://<你的租户域名>-admin.sharepoint.com
  2. 点击「创建站点」,选择「团队站点」或「通信站点」,按引导完成创建即可用于权限测试

内容的提问来源于stack exchange,提问作者alilland

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 20:36:18