Azure AD tenants and directories - Time & Space Complexity
When working with Azure AD tenants and directories, it's important to understand how operations scale as you add more users or groups.
We want to know how the time to complete tasks grows when the directory size increases.
Analyze the time complexity of listing all users in an Azure AD tenant.
// Using Azure CLI to list users in a tenant
az ad user list --all
// Or using Microsoft Graph API to get users
GET https://graph.microsoft.com/v1.0/users
This operation fetches all user objects from the Azure AD directory.
Identify the API calls, resource provisioning, data transfers that repeat.
- Primary operation: API call to fetch user objects from Azure AD.
- How many times: Once per page of results; multiple calls if many users.
As the number of users grows, the number of API calls and data transferred grows roughly in proportion.
| Input Size (n) | Approx. API Calls/Operations |
|---|---|
| 10 | 1 call |
| 100 | 1-2 calls |
| 1000 | 10 calls |
Pattern observation: More users mean more calls and data, growing roughly linearly.
Time Complexity: O(n)
This means the time to list all users grows directly with the number of users in the directory.
[X] Wrong: "Listing users takes the same time no matter how many users exist."
[OK] Correct: More users mean more data to fetch and more API calls, so time grows with user count.
Understanding how directory operations scale helps you design efficient cloud solutions and handle large user bases confidently.
"What if we filtered users by a property instead of listing all? How would the time complexity change?"
Practice
Solution
Step 1: Understand Azure AD tenant purpose and identify correct use case
An Azure AD tenant is a dedicated space for managing identities and access. It is not for hosting websites, storing VMs, or databases but for user and access management.Final Answer:
To manage users and control access within an organization -> Option BQuick Check:
Azure AD tenant = user and access management [OK]
- Confusing tenant with storage or hosting services
- Thinking tenant is a database service
- Assuming tenant manages virtual machines
Solution
Step 1: Recall Azure CLI commands for tenants and identify correct one
The command to list tenants is under 'az account' namespace, not 'az ad'. 'az account tenant list' lists all tenants you have access to.Final Answer:
az account tenant list -> Option DQuick Check:
List tenants = az account tenant list [OK]
- Using 'az ad tenant list' which is invalid
- Confusing 'az login' with tenant listing
- Using 'az tenant show' which does not exist
az account tenant list:
[{"tenantId": "1111-2222-3333-4444", "isDefault": true}, {"tenantId": "5555-6666-7777-8888", "isDefault": false}]
What does the isDefault field indicate?Solution
Step 1: Understand 'isDefault' meaning and eliminate incorrect options
'isDefault' marks which tenant is currently active in your Azure CLI session. It does not relate to user count, cost, or deletion status.Final Answer:
The tenant currently active for your Azure session -> Option CQuick Check:
isDefault = active tenant [OK]
- Thinking 'isDefault' means largest tenant
- Assuming it means deleted tenant
- Confusing it with billing or cost info
az ad tenant list but get an error saying the command is not found. What is the most likely cause?Solution
Step 1: Check command availability and verify other causes
'az ad tenant list' is not a valid Azure CLI command; tenant listing is under 'az account'. Login issues or no tenants would give different errors; CLI version too new is unlikely to remove commands.Final Answer:
The Azure CLI does not have a direct 'az ad tenant list' command -> Option AQuick Check:
Invalid command = no 'az ad tenant list' [OK]
- Assuming login error causes command not found
- Thinking no tenants causes command error
- Blaming CLI version without checking command docs
Solution
Step 1: Create new Azure AD tenant and add custom domain
Use the Azure portal to create a separate tenant for the subsidiary company. Within the new tenant, add the subsidiary's custom domain and verify ownership.Final Answer:
Create a new tenant in Azure portal, then add and verify the custom domain in that tenant -> Option AQuick Check:
New tenant + verify domain = correct process [OK]
- Adding domain to wrong tenant
- Assuming subscription creation creates tenant with domain
- Trying to rename existing tenant domain
Ready to prove it?
Pass the test and this pattern moves unknown
