Rule ID
SV-213861r960960_rule
Version
V2R4
CCIs
If SQL Server were to allow any user to make changes to database structure or logic, then those changes might be implemented without undergoing the appropriate testing and approvals that are part of a robust change management process. Accordingly, only qualified and authorized individuals shall be allowed to obtain access to information system components for purposes of initiating changes, including upgrades and modifications. Unmanaged changes that occur to the database software libraries or configuration can lead to unauthorized or compromised installations.
Using the system security plan, identify the group(s)/role(s) established for SQL Server DBMS and database modification, and the individuals authorized to modify the DBMS and database(s). If helpful, the views STIG.server_permissions and STIG.database_permissions, provided in the supplemental file Permissions.sql, can be used to search for the relevant roles: look for Permission values containing "Alter," "Create," "Control," etc. Obtain the list of users in those group(s)/roles. The provided functions STIG.members_of_db_role() and STIG.members_of_server_role(), can be used for this. If unauthorized access to the group(s)/role(s) has been granted, this is a finding.
Revoke unauthorized memberships in the group(s)/role(s) designated for DBMS and database modification. Syntax examples: ALTER ROLE Power DROP MEMBER JenUser; -- the member is a database role or database user. ALTER SERVER ROLE GreatPower DROP MEMBER Irresponsibility; -- the member is a server role or login.