如何配置Microsoft Teams机器人仅访问单个SharePoint站点的文件权限
当前遇到的问题
- 目前在Azure门户给机器人配置了
Files.ReadWrite.All权限(权限配置截图:
),虽能正常读写SharePoint文件,但权限覆盖所有站点,范围太宽泛 - 删除该全局权限后,机器人操作时直接报错:
Either scp or roles claim need to be present in the token. - 尝试配置
Sites.Selected权限后,机器人仍能随意读写所有站点,未实现单个站点的权限限制
核心需求
- 如何给Teams机器人设置仅能访问指定单个SharePoint站点的文件读写权限?
- 已知有API配置路径,但需要全局控制权的应用,本人无此权限
- 自身拥有目标站点的完全访问权,能否直接为机器人开通该站点的权限?或有没有无需API、可指导IT通过UI完成的配置步骤?
可行解决办法
办法1:自行操作(无需全局权限)
既然你拥有目标站点的完全控制权限,直接在站点内给机器人加权限即可:
- 打开目标SharePoint站点,点击右上角齿轮图标进入设置,选择站点权限
- 点击高级权限设置,再点页面上的授予权限
- 在弹出的输入框中,搜索机器人在Azure AD里注册的应用名称,找到后选中它
- 分配对应权限:需要读写文件选编辑,需更高权限选完全控制,确认添加
- 最后务必去Azure门户删除机器人的
Files.ReadWrite.All权限,仅保留Sites.Selected(若之前已添加)
办法2:指导IT通过UI配置(需全局权限配合)
若上述办法未生效,让IT完成以下两步:
- 先在Azure门户给机器人添加
Sites.Selected的应用权限(不要选委托权限),并完成管理员同意 - 用站点管理员或全局管理员账号,进入目标SharePoint站点的权限设置,给机器人应用分配编辑/完全控制权限(步骤同办法1的2-4)
重点提醒
- 必须删除机器人的全局权限(如
Files.ReadWrite.All),否则即便添加了站点权限,机器人仍能访问所有站点 - 查找机器人应用时,要搜索Azure AD中的注册名称,不要误选用户账号
- 配置完成后测试验证:让机器人访问其他站点文件应提示权限不足,访问目标站点则正常
内容的提问来源于stack exchange,提问作者LewlSauce
相关产品推荐
相关产品推荐

