- Newest
- Most votes
- Most comments
Hi,
According to the AWS documentation, sysadmin
server-level role is not available in Amazon RDS for SQL Server. You might need to explore alternative approaches, such as hosting it on an EC2 instance, if that level of access is explicitly required.
In Amazon RDS for SQL Server, you cannot assign the sysadmin role to any database user — not even the mast** user. This is a managed service limitation imposed by AWS to protect the underlying infrastructure and ensure stability. You can grant elevated privileges using the RDS mast** user, which comes with many permissions excluding restricted server-level roles. Here’s how you can work around it:
-
Use the mast** user for administration The mast** user can: Create and manage databases Create logins and users Grant many high-level privileges (but not sysadmin)
-
Create a new user and grant needed roles Connect as the RDS mast** user and run: USE [your_database_name]; CREATE USER your_user_name FOR LOGIN your_login_name; EXEC sp_addrolemember 'db_owner', 'your_user_name'; The db_owner role provides full control over all objects in the database.
-
Grant additional explicit permissions If your application requires specific rights (e.g., to run EXECUTE on stored procedures, or access specific tables), grant those directly: GRANT EXECUTE ON SCHEMA::dbo TO your_user_name; GRANT SELECT, INSERT, UPDATE, DELETE ON [your_table_name] TO your_user_name; Alternative Solutions Use AWS Systems Manager or EC2 with full SQL Server installation:If your application absolutely must have sysadmin access, consider using SQL Server on EC2 where you control the OS and SQL Server instance. In rare edge cases, AWS may be able to suggest a workaround if a specific system-level configuration is needed.https://aws.amazon.com/premiumsupport/
Thank you so very much for your reply, can you please help me to confirm if we need to give sysadmin role in RDS case, then what will be the next solution?
Relevant content
- asked 2 years ago