执行Azure SQL弹性池移动、创建、删除操作所需的最低访问权限是多少?
权限分为Azure资源管理权限、SQL实例内权限两类,最低权限配置如下:
1. 资源管理层面(创建/删除弹性池、在池间移动数据库)
- 不需要授予订阅级Contributor角色,也不需要Azure SQL Server的全局管理员权限,最低适配的内置角色是SQL DB Contributor,该角色刚好覆盖弹性池全生命周期管理、数据库池归属调整的所有操作权限,没有多余的其他资源操作权限。
- 如果需要做更严格的权限最小化管控,可以自定义角色,仅开放以下操作权限即可:
Microsoft.Sql/servers/elasticPools/readMicrosoft.Sql/servers/elasticPools/writeMicrosoft.Sql/servers/elasticPools/deleteMicrosoft.Sql/servers/databases/write(数据库跨池移动本质是修改数据库的池归属属性,需要该权限)
2. SQL实例内权限(读取sys.*统计信息)
- 不需要授予sysadmin、db_owner等高权限角色,仅需给程序使用的SQL账号授予VIEW SERVER STATE权限,即可读取所有服务器级、数据库级的
sys.*动态管理视图与统计信息。 - 如果仅需要读取单个数据库的
sys.*统计,仅授予对应数据库的VIEW DATABASE STATE权限即可,无需开放服务器级权限。
内容的提问来源于stack exchange,提问作者Dan Hunex
相关产品推荐
相关产品推荐

