STIGQter STIGQter: STIG Summary: Microsoft Azure SQL Database Security Technical Implementation Guide Version: 2 Release: 3 Benchmark Date: 02 Jul 2025:

Azure SQL Databases must integrate with Azure Active Directory for providing account management and automation for all users, groups, roles, and any other principals.

DISA Rule

SV-255301r1043176_rule

Vulnerability Number

V-255301

Group Title

SRG-APP-000023-DB-000001

Rule Version

ASQL-00-000100

Severity

CAT I

CCI(s)

Weight

10

Fix Recommendation

If mixed mode is required, document the need and justification; describe the measures taken to ensure the use of Azure SQL Database authentication is kept to a minimum; describe the measures taken to safeguard passwords; list or describe the SQL Logins used; and obtain official approval.

If mixed mode is not required:
For each account being managed by SQL DB but not requiring it, drop or disable the SQL Database user. Replace it with an appropriately configured account, as needed.

To drop a User in the SSMS Object Explorer:
Navigate to Databases, choose database, then select Security >> Users. Right-click on the User name and then click "Delete".

To drop a User via a query:
Change the context to the database_name to be evaluates;
DROP USER <user_name>;

To enable AzureADOnlyAuthentication, in a PowerShell or Cloud Shell interface, run the statement:
az sql server ad-only-auth enable --resource-group myresource --name myserver

OR

Enable-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName myserver -ResourceGroupName myresource

More information regarding this process is available at:
https://docs.microsoft.com/en-us/azure/azure-sql/database/authentication-azure-ad-only-authentication

Check Contents

Determine if Azure SQL Database is configured to use Azure Active Directory authentication only.

Only Azure Active Directory will be used to authenticate to the server. SQL authentication will be disabled, including SQL Server administrators and users.

In a PowerShell or Cloud Shell interface, run the statement:

az sql server ad-only-auth get --resource-group myresource --name myserver

OR

Get-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName myserver -ResourceGroupName myresource

If the returned value in the "AzureADOnlyAuthentication" column is "True", this is not a finding.

If Mixed mode (both SQL Server authentication and Windows authentication) is in use and the need for mixed mode has not been documented and approved, this is a finding.

From the documentation, obtain the list of accounts authorized to be managed by Azure SQL Database.

Determine the accounts (SQL Logins) actually managed by Azure SQL Database. Run the statement:

SELECT name
FROM sys.database_principals
WHERE type_desc = 'SQL_USER'
AND authentication_type_desc = 'INSTANCE';

If any accounts listed by the query are not listed in the documentation, this is a finding.

Risk must be accepted by the ISSO/ISSM.

More information regarding this process is available at:
https://docs.microsoft.com/en-us/azure/azure-sql/database/authentication-azure-ad-only-authentication

Vulnerability Number

V-255301

Documentable

False

Rule Version

ASQL-00-000100

Severity Override Guidance

Determine if Azure SQL Database is configured to use Azure Active Directory authentication only.

Only Azure Active Directory will be used to authenticate to the server. SQL authentication will be disabled, including SQL Server administrators and users.

In a PowerShell or Cloud Shell interface, run the statement:

az sql server ad-only-auth get --resource-group myresource --name myserver

OR

Get-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName myserver -ResourceGroupName myresource

If the returned value in the "AzureADOnlyAuthentication" column is "True", this is not a finding.

If Mixed mode (both SQL Server authentication and Windows authentication) is in use and the need for mixed mode has not been documented and approved, this is a finding.

From the documentation, obtain the list of accounts authorized to be managed by Azure SQL Database.

Determine the accounts (SQL Logins) actually managed by Azure SQL Database. Run the statement:

SELECT name
FROM sys.database_principals
WHERE type_desc = 'SQL_USER'
AND authentication_type_desc = 'INSTANCE';

If any accounts listed by the query are not listed in the documentation, this is a finding.

Risk must be accepted by the ISSO/ISSM.

More information regarding this process is available at:
https://docs.microsoft.com/en-us/azure/azure-sql/database/authentication-azure-ad-only-authentication

Check Content Reference

M

Target Key

5500