已分配Synapse User角色的用户可缩放SQL Pool,如何阻止该操作?
解决Synapse只读用户组可缩放SQL Pool的问题
排查权限叠加问题
- 检查该用户组是否被分配了Azure RBAC角色(如
SQL DB Contributor、Synapse Contributor、Contributor等),这类角色拥有修改SQL Pool配置的权限,会覆盖Synapse内置"User"只读角色的限制。 - 确认用户组是否通过资源组、订阅级的角色分配,间接继承了其他具备编辑权限的角色。
移除多余权限
- 找到用户组被分配的非必要RBAC角色,直接移除对应角色分配,确保用户组仅保留Synapse "User"角色。
- 如果需要保留部分权限但限制缩放操作,可创建自定义RBAC角色,明确拒绝
Microsoft.Synapse/workspaces/sqlPools/write或Microsoft.Synapse/workspaces/sqlPools/scale/action权限。
验证权限设置
- 使用该用户组的测试账号登录Synapse Studio,尝试执行SQL Pool缩放操作,确认操作已被禁止。
- 通过Azure门户的「访问控制(IAM)」页面,再次核对用户组的所有角色分配,确保无遗漏的权限项。
补充说明
Synapse内置的"User"角色确实为只读权限,但Azure RBAC权限优先级更高,当用户同时拥有RBAC编辑类角色时,会获得修改资源的权限,这是容易被忽略的核心原因。
内容的提问来源于stack exchange,提问作者xmlapi
相关产品推荐
相关产品推荐

