SA(System Admin)角色是SQL Server中最强大的角色,该角色完全绕过所有安全检查,可以在SQL Server中执行任何操作。您可以在RDS SQL Server中创建SA权限的数据库账号(超级权限账号),用于快速适配线下软件上云。
前提条件
- RDS实例需满足如下条件: - 实例系列:基础系列、高可用系列(2012及以上版本)、集群系列 
- 实例规格:通用型、独享型(不支持共享型) 
- 计费方式:包年包月或按量付费(不支持Serverless实例) 
- 网络类型:专有网络。如需变更网络类型,请参见更改网络类型。 
- 实例创建时间: - 高可用系列和集群系列实例的创建时间需在2021年01月01日或之后。 
- 基础系列实例的创建时间需在2022年09月02日或之后。 
 说明- 创建时间可在基本信息页内的运行状态中查看。 
 
- 登录账号必须为阿里云主账号。 
注意事项
- 若您的实例满足前提条件,但控制台看不到SA权限账号创建入口,您可以对实例进行一次可用区迁移操作,完成后刷新账号管理页面,即可创建SA权限账号。 
- 每个实例只能创建一个SA权限的数据库账号,该账号创建后支持通过控制台删除。 
- 聚石塔不支持创建SA权限账号。 
- SA账号名称不能为如下的任何一个: - root|admin|eagleye|master|aurora|sysadmin|administrator|mssqld|public|securityadmin|serveradmin|setupadmin|processadmin|diskadmin|dbcreator|bulkadmin|tempdb|msdb|model|distribution|mssqlsystemresource|guest|add|except|percent|all|exec|plan|alter|execute|precision|and|exists|primary|any|exit|print|as|fetch|proc|asc|file|procedure|authorization|fillfactor|public|backup|for|raiserror|begin|foreign|read|between|freetext|readtext|break|freetexttable|reconfigure|browse|from|references|bulk|full|replication|by|function|restore|cascade|goto|restrict|case|grant|return|check|group|revoke|checkpoint|having|right|close|holdlock|rollback|clustered|identity|rowcount|coalesce|identity_insert|rowguidcol|collate|identitycol|rule|column|if|save|commit|in|schema|compute|index|select|constraint|inner|session_user|contains|insert|set|containstable|intersect|setuser|continue|into|shutdown|convert|is|some|create|join|statistics|cross|key|system_user|current|kill|table|current_date|left|textsize|current_time|like|then|current_timestamp|lineno|to|current_user|load|top|cursor|national|tran|database|nocheck|transaction|dbcc|nonclustered|trigger|deallocate|not|truncate|declare|null|tsequal|default|nullif|union|delete|of|unique|deny|off|update|desc|offsets|updatetext|disk|on|use|distinct|open|user|distributed|opendatasource|values|double|openquery|varying|drop|openrowset|view|dummy|openxml|waitfor|dump|option|when|else|or|where|end|order|while|errlvl|outer|with|escape|over|writetext||dbo|login|sys|drc_rds$
使用影响
由于SA权限账号的权限过大,已超出RDS SQL Server的控制范围,因此若在RDS SQL Server实例中创建过SA权限账号,该实例不再享受SLA保障,实例运行环境归属于用户,但实例正常使用和售后服务仍不受影响。对于未创建SA权限账号的RDS SQL Server实例,仍享有完整SLA保障。
使用建议
由于SA权限账号拥有的权限过大,且该账号所拥有的操作权限已超出RDS SQL Server的控制范围,因此使用该账号期间,请务必遵循以下使用建议:
- 请勿操作高可用系列和集群系列RDS SQL Server实例的 - rdscore数据库。
- 请勿操作系统账号。具体详情,请参见系统账号说明。 
- 请勿在本地环境执行物理备份操作,该操作将影响实例PITR(Point-In-Time Recovery)能力。建议使用RDS自带备份功能,请参见备份SQL Server数据。 
- 请勿对高可用系列和集群系列的RDS SQL Server实例执行移除或操作高可用相关对象操作,例如执行 - DROP AVAILABILITY GROUP等操作。
- 请勿将任何数据存储于C盘(系统盘)中。 
- 请勿修改RDS实例中已有的Server级别的触发器,包含 - [_$$_tr_$$_rds_alter_database]、- [_$$_tr_$$_rds_alter_login]、- [_$$_tr_$$_rds_create_database]、- [_$$_tr_$$_rds_create_login]、- [_$$_tr_$$_rds_drop_database]、- [_$$_tr_$$_rds_drop_login]、- [_$$_tr_$$_rds_server_role]。
- 请勿修改SQL Server的启动账号、端口等核心配置。 
- 请勿修改Windows Administrator密码。 
操作步骤
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。 
- 在左侧导航栏单击账号管理。 
- 单击创建账号,设置如下参数,单击确定。 - 参数 - 说明 - 数据库账号 - 由小写字母、数字或下划线组成。但开头需为字母,结尾需为字母或数字,最多64个字符。 - 账号类型 - 选择超级权限账号,阅读并勾选我已阅读并同意创建超级权限账号对《RDS服务等级协议》的变更行为。 说明- 如果您未找到该类型账号,请检查实例是否已满足前提条件。 
- 其他类型的账号说明,请参见普通账号和高权限账号、主机账号。 
 - 新密码 - 设置账号密码。要求如下: - 长度为8~32个字符。 
- 由大写字母、小写字母、数字、特殊字符中的任意三种组成。 
- 特殊字符为 - !@#$%^&*()_+-=。
 - 确认密码 - 输入与密码一致的字段,以确保密码正确输入。 - 应用密码策略 - 创建账号时,选择是否应用密码策略,以控制账号密码的使用时长,增强账号的安全性,应用前您需要先设置密码策略。 - 备注 - 输入备注说明,最多256个字符。 
- (可选)重置账号密码或禁用账号。 - 您可单击账号操作列下的重置密码、禁用账号或删除按钮管理账号。更多详情,请参见重置密码。  
相关文档
- 您也可以通过API创建SA权限的数据库账号或其他权限账号,详情请参见CreateAccount - 创建数据库账号。 
- 如需通过控制台创建普通账号或高权限账号,详情请参见创建普通账号或高权限账号。