使用New-AzSqlDatabaseExport导出bacpac的SQL用户最低角色需求
Azure SQL数据库导出Bacpac的SQL用户最低权限要求
单个数据库导出场景
若仅需导出指定单个数据库,为目标SQL用户授予该数据库的db_backupoperator角色即可。此角色仅包含备份、导出相关的必要权限,完全符合最小权限原则。
服务器下所有数据库导出场景
要让单个SQL用户能够导出服务器上所有数据库的Bacpac,需配置以下两项权限:
- 服务器级权限:为用户授予
VIEW ANY DATABASE权限,确保用户能查看服务器上的所有数据库; - 数据库级权限:在服务器的每个数据库中,为该用户授予
db_backupoperator角色。
如果希望简化配置流程,也可创建一个服务器级自定义角色,包含VIEW ANY DATABASE权限以及ALTER ANY DATABASE权限(用于批量为所有数据库分配角色),但ALTER ANY DATABASE权限范围较广,需谨慎使用。相比之下,逐个数据库分配db_backupoperator角色是更严格的最小权限实现方案。
补充说明:使用
New-AzSqlDatabaseExport命令时,执行命令的Azure AD主体还需拥有目标存储账户的对应权限(如Storage Blob Data Contributor),但此部分不属于SQL用户的权限范畴。
内容的提问来源于stack exchange,提问作者jarrad_obrien
相关产品推荐
相关产品推荐

