Microsoft Azure SQL Database Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
Azure SQL Database must enforce approved authorizations for logical access to database information and system resources in accordance with applicable access control policies.
Enterprise environments make account management for applications and databases challenging and complex. A manual process for account management functions adds the risk of a potential oversight or o...Rule High Severity -
Database objects (including but not limited to tables, indexes, storage, stored procedures, functions, triggers, links to software external to Azure SQL Database, etc.) must be owned by database/Azure SQL Database principals authorized for ownership.
Within the database, object ownership implies full privileges to the owned object, including the privilege to assign access to the owned objects to other subjects. Database functions and procedures...Rule Medium Severity -
The role(s)/group(s) used to modify database structure (including but not necessarily limited to tables, indexes, storage, etc.) and logic modules (stored procedures, functions, triggers, links to software external to Azure SQL Database, etc.) must be restricted to authorized users.
If the Azure SQL Database 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 tha...Rule Medium Severity -
Azure SQL Database contents must be protected from unauthorized and unintended information transfer by enforcement of a data-transfer policy.
Applications, including DBMSs, must prevent unauthorized and unintended information transfer via shared system resources. Data used for the development and testing of applications often involves c...Rule Medium Severity -
Azure SQL Database must check the validity of all data inputs except those specifically identified by the organization.
Invalid user input occurs when a user inserts data or characters into an application's data entry fields and the application is unprepared to process that data. This results in unanticipated applic...Rule Medium Severity -
Azure SQL Database must associate organization-defined types of security labels having organization-defined security label values with information in storage.
Without the association of security labels to information, there is no basis for Azure SQL Database to make security-related access-control decisions. Security labels are abstractions representing...Rule Medium Severity -
Azure SQL Database must associate organization-defined types of security labels having organization-defined security label values with information in process.
Without the association of security labels to information, there is no basis for Azure SQL Database to make security-related access-control decisions. Security labels are abstractions representing...Rule Medium Severity -
Azure SQL Database must prohibit user installation of logic modules (stored procedures, functions, triggers, views, etc.) without explicit privileged status.
Allowing regular users to install software, without explicit privileges, creates the risk that untested or potentially malicious software will be installed on the system. Explicit privileges (escal...Rule Medium Severity -
When invalid inputs are received, the Azure SQL Database must behave in a predictable and documented manner that reflects organizational and system objectives.
A common vulnerability is unplanned behavior when invalid inputs are received. This requirement guards against adverse or unintended system behavior caused by invalid inputs, where information syst...Rule Medium Severity -
Azure SQL Database must include additional, more detailed, organization-defined information in the audit records for audit events identified by type, location, or subject.
Information system auditing capability is critical for accurate forensic analysis. Reconstruction of harmful events or forensic analysis is not possible if audit records do not contain enough infor...Rule Medium Severity -
The audit information produced by Azure SQL Database must be protected from unauthorized modification.
If audit data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity is difficult, if not impossible, to achieve. In ...Rule Medium Severity -
Azure SQL Database default demonstration and sample databases, database objects, and applications must be removed.
Information systems are capable of providing a wide variety of functions and services. Some of the functions and services, provided by default, may not be necessary to support essential organizatio...Rule Medium Severity -
Azure SQL Database must uniquely identify and authenticate nonorganizational users (or processes acting on behalf of nonorganizational users).
Nonorganizational users include all information system users other than organizational users, which include organizational employees or individuals the organization deems to have equivalent status ...Rule Medium Severity -
Azure SQL Database must prevent nonprivileged users from executing privileged functions, to include disabling, circumventing, or altering implemented security safeguards/countermeasures.
Preventing nonprivileged users from executing privileged functions mitigates the risk that unauthorized individuals or processes may gain unnecessary access to information or privileges. System d...Rule Medium Severity -
Azure SQL Database must provide a warning to appropriate support staff when allocated audit record storage volume reaches 75 percent of maximum audit record storage capacity.
Auditing for Azure SQL Database tracks database events and writes them to an audit log in the Azure storage account, Log Analytics workspace, or Event Hubs. Under normal conditions, the audit spac...Rule Medium Severity -
Azure SQL Database must maintain the confidentiality and integrity of information during preparation for transmission.
Information can be either unintentionally or maliciously disclosed or modified during preparation for transmission, including, for example, during aggregation, at protocol transformation points, an...Rule Medium Severity -
Azure SQL DB must generate audit records when unsuccessful attempts to access categories of information (e.g., classification levels/security levels) occur.
Changes in categorized information must be tracked. Without an audit trail, unauthorized access to protected data could go undetected. To aid in diagnosis, it is necessary to keep track of failed...Rule Medium Severity -
Azure SQL DB must generate audit records when unsuccessful attempts to modify security objects occur.
Changes in the database objects (tables, views, procedures, functions) that record and control permissions, privileges, and roles granted to users and roles must be tracked. Without an audit trail,...Rule Medium Severity -
Azure SQL Database must generate audit records when unsuccessful attempts to modify categorized information (e.g., classification levels/security levels) occur.
Changes in categories of information must be tracked. Without an audit trail, unauthorized access to protected data could go undetected. To aid in diagnosis, it is necessary to keep track of fail...Rule Medium Severity -
Azure SQL Database must generate audit records when categories of information (e.g., classification levels/security levels) are deleted.
Changes in categorized information must be tracked. Without an audit trail, unauthorized access to protected data could go undetected. For detailed information on categorizing information, refer ...Rule Medium Severity -
Azure SQL Database must generate audit records for all privileged activities or other system-level access.
Without tracking privileged activity, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. System documentation...Rule Medium Severity -
Azure SQL Database must generate audit records for all unsuccessful attempts to execute privileged activities or other system-level access.
Without tracking privileged activity, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. System documentation...Rule Medium Severity -
Azure SQL Database must generate audit records when unsuccessful accesses to objects occur.
Without tracking all or selected types of access to all or selected objects (tables, views, procedures, functions, etc.), it would be difficult to establish, correlate, and investigate the events r...Rule Medium Severity -
Azure SQL Database must offload audit data to a separate log management facility; this must be continuous and in near real time for systems with a network connection to the storage facility and weekly or more often for stand-alone systems.
Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Offloading is a common process in information systems with limited audit storage capacity. Az...Rule Medium Severity -
Azure SQL Database must only use approved firewall settings deemed by the organization to be secure, including denying azure services access to the server.
Use of nonsecure firewall settings, such as allowing azure services to access the server, exposes the system to avoidable threats.Rule Medium Severity -
SRG-APP-000441-DB-000378
Group -
SRG-APP-000496-DB-000335
Group -
SRG-APP-000023-DB-000001
Group -
Azure SQL Databases must integrate with Azure Active Directory for providing account management and automation for all users, groups, roles, and any other principals.
Enterprise environments make account management for applications and databases challenging and complex. A manual process for account management functions adds the risk of a potential oversight or o...Rule High Severity -
SRG-APP-000033-DB-000084
Group -
Azure SQL Database must generate audit records when unsuccessful attempts to delete security objects occur.
The removal of security objects from the database/DBMS would seriously degrade a system's information assurance posture. If such an action is attempted, it must be logged. To aid in diagnosis, it...Rule Medium Severity -
SRG-APP-000502-DB-000348
Group -
SRG-APP-000033-DB-000084
Group -
Azure SQL Database must enforce approved authorizations for logical access to server information and system resources in accordance with applicable access control policies.
Authentication with a DOD-approved PKI certificate does not necessarily imply authorization to access Azure SQL Database. To mitigate the risk of unauthorized access to sensitive information by ent...Rule High Severity -
SRG-APP-000080-DB-000063
Group -
Azure SQL Database must protect against a user falsely repudiating by ensuring only clearly unique Active Directory user accounts can connect to the database.
Nonrepudiation of actions taken is required in order to maintain data integrity. Examples of particular actions taken by individuals include creating information, sending a message, approving infor...Rule Medium Severity -
SRG-APP-000080-DB-000063
Group -
Azure SQL Database must protect against a user falsely repudiating by use of system-versioned tables (Temporal Tables).
Nonrepudiation of actions taken is required in order to maintain data integrity. Examples of particular actions taken by individuals include creating information, sending a message, approving infor...Rule Medium Severity -
SRG-APP-000133-DB-000200
Group -
SRG-APP-000133-DB-000362
Group -
SRG-APP-000233-DB-000124
Group -
The Azure SQL Database must isolate security functions from nonsecurity functions.
An isolation boundary provides access control and protects the integrity of the hardware, software, and firmware that perform security functions. Security functions are the hardware, software, an...Rule Medium Severity -
SRG-APP-000243-DB-000128
Group -
SRG-APP-000251-DB-000160
Group -
SRG-APP-000251-DB-000391
Group -
The Azure SQL Database and associated applications must reserve the use of dynamic code execution for situations that require it.
With respect to database management systems, one class of threat is known as SQL Injection, or more generally, code injection. It takes advantage of the dynamic execution capabilities of various pr...Rule Medium Severity -
SRG-APP-000251-DB-000392
Group -
The Azure SQL Database and associated applications, when making use of dynamic code execution, must scan input data for invalid values that may indicate a code injection attack.
With respect to database management systems, one class of threat is known as SQL Injection, or more generally, code injection. It takes advantage of the dynamic execution capabilities of various pr...Rule Medium Severity -
SRG-APP-000311-DB-000308
Group -
SRG-APP-000313-DB-000309
Group
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.