| name | cis-azure-foundations-5.4 |
| description | Ensure 'Restrict non-admin users from creating tenants' is set to 'Yes' |
| category | cis-azure-foundations |
| version | 5.0.0 |
| author | cyberstrike-official |
| tags | ["cis","azure","identity","entra-id","tenant-creation","access-control"] |
| cis_id | 5.4 |
| cis_benchmark | CIS Microsoft Azure Foundations Benchmark v5.0.0 |
| tech_stack | ["azure"] |
| cwe_ids | [] |
| chains_with | ["cis-azure-foundations-5.14","cis-azure-foundations-5.17"] |
| prerequisites | [] |
| severity_boost | {} |
Ensure 'Restrict non-admin users from creating tenants' is set to 'Yes'
Description
Require administrators or appropriately delegated users to create new tenants.
Rationale
It is recommended to only allow an administrator to create new tenants. This prevents users from creating new Microsoft Entra ID or Azure AD B2C tenants and ensures that only authorized users are able to do so.
Impact
Enforcing this setting will ensure that only authorized users are able to create new tenants.
Audit Procedure
Using Azure Portal
- From Azure Home select the Portal Menu
- Select
Microsoft Entra ID
- Under
Manage, select Users
- Under
Manage, select User settings
- Ensure that
Restrict non-admin users from creating tenants is set to Yes
Using PowerShell
Import-Module Microsoft.Graph.Identity.SignIns
Connect-MgGraph -Scopes 'Policy.ReadWrite.Authorization'
Get-MgPolicyAuthorizationPolicy | Select-Object -ExpandProperty DefaultUserRolePermissions | Format-List
Review the "DefaultUserRolePermissions" section of the output. Ensure that AllowedToCreateTenants is not True.
Expected Result
In the Azure Portal, Restrict non-admin users from creating tenants should be set to Yes. In PowerShell, AllowedToCreateTenants should be False.
Remediation
Using Azure Portal
- From Azure Home select the Portal Menu
- Select
Microsoft Entra ID
- Under
Manage, select Users
- Under
Manage, select User settings
- Set
Restrict non-admin users from creating tenants to Yes
- Click
Save
Using PowerShell
Import-Module Microsoft.Graph.Identity.SignIns
Connect-MgGraph -Scopes 'Policy.ReadWrite.Authorization'
Select-MgProfile -Name beta
$params = @{
DefaultUserRolePermissions = @{
AllowedToCreateTenants = $false
}
}
Update-MgPolicyAuthorizationPolicy -AuthorizationPolicyId -BodyParameter $params