STIGUI
V-276235CAT II — Medium severitySV-276235r1150008_rule

Azure SQL Managed Instance must enforce access restrictions associated with changes to the configuration of the database(s).

Rule version MSQL-00-003100 · STIG v1 · 2025-10-07

Discussion

Failure to provide logical access restrictions associated with changes to configuration may have significant effects on the overall security of the system.

When dealing with access restrictions pertaining to change control, it should be noted that any changes to the hardware, software, and/or firmware components of the information system can potentially have significant effects on the overall security of the system.

Accordingly, only qualified and authorized individuals must be allowed to obtain access to system components for the purposes of initiating changes, including upgrades and modifications.

Check

Execute the following query to obtain a listing of user databases whose owner is a member of a fixed server role and the corresponding roles:

SELECT D.name AS database_name, SUSER_SNAME(D.owner_sid) AS owner_name, FRM.is_fixed_role_member, B.fixed_role_memberships FROM sys.databases D OUTER APPLY ( SELECT MAX(fixed_role_member) AS is_fixed_role_member FROM ( SELECT IS_SRVROLEMEMBER(R.name, SUSER_SNAME(D.owner_sid)) AS fixed_role_member FROM sys.server_principals R WHERE is_fixed_role = 1 ) A ) FRM OUTER APPLY ( SELECT STUFF((SELECT ', ' + R.name FROM sys.server_principals R JOIN sys.server_role_members RM ON R.principal_id = RM.role_principal_id WHERE RM.member_principal_id = SUSER_ID(SUSER_SNAME(D.owner_sid)) AND r.is_fixed_role =1 FOR XML PATH(''), TYPE).value('text()[1]','nvarchar(max)'), 1, LEN(','), '') AS fixed_role_memberships ) B WHERE D.database_id > 4 AND (FRM.is_fixed_role_member = 1 OR FRM.is_fixed_role_member IS NULL) ORDER BY database_name

If any server roles are returned, but not documented and authorized, this is a finding.

Fix

Document and obtain approval for logins with privileged permissions and role memberships.

If necessary, use the ALTER ROLE and/or REVOKE commands to remove unauthorized privileged permissions and/or role memberships. Example script provided below:

ALTER ROLE ddladmin DROP MEMBER UnauthorizedUser;

REVOKE SELECT ON OBJECT::test.table FROM UnauthorizedUser;

Refer to: https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-role-transact-sql https://docs.microsoft.com/en-us/sql/t-sql/statements/revoke-transact-sql

If necessary, in the Azure Portal, navigate to the Access Control pane for the Azure SQL Managed Instance to review and remove unauthorized privileged permissions and/or role memberships.

Refer to the documentation linked below: https://docs.microsoft.com/en-us/azure/role-based-access-control/role-definitions-list https://docs.microsoft.com/en-us/azure/role-based-access-control/role-assignments-remove

Identifiers

Group ID
V-276235
Group title
SRG-APP-000380-DB-000360
Rule ID
SV-276235r1150008_rule
Check ID
C-80390r1149612_chk
Fix ID
F-80295r1150007_fix