AZ-104 — Microsoft Azure Administrator Quick Reference

Compact AZ-104 Quick Reference for Microsoft Azure Administrator candidates: governance, storage, compute, networking, monitoring, commands, and exam traps.

Exam identity and use

This independent Quick Reference supports candidates preparing for Microsoft Azure Administrator (AZ-104) from Microsoft. Use it as a compact decision aid while practicing scenario questions, labs, and troubleshooting tasks.

AZ-104 focuses on administering Azure environments across these practical areas:

AreaWhat to recognize quickly
Identity and governanceMicrosoft Entra ID, Azure RBAC, subscriptions, management groups, policy, locks, tags
StorageStorage accounts, blob/file access, redundancy, lifecycle, security, AzCopy, Azure Files
ComputeVMs, availability, VM Scale Sets, App Service, containers, disks, extensions, ARM/Bicep deployments
NetworkingVNets, subnets, NSGs, routing, peering, VPN, Private Link, load balancing, DNS
Monitoring and maintenanceAzure Monitor, Log Analytics, alerts, Backup, Site Recovery, updates, troubleshooting

Azure resource model and governance

Scope hierarchy

ScopeUse forExam cues
Management groupOrganize multiple subscriptions; apply governance broadly“Apply policy/RBAC across several subscriptions”
SubscriptionBilling/security boundary; contains resource groups“Separate environments, cost tracking, access boundary”
Resource groupLifecycle container for resourcesResources in one RG can be in different regions
ResourceIndividual Azure service instanceRole assignments and locks can be placed directly here

High-yield points:

  • Azure RBAC assignments are inherited downward from management group to subscription to resource group to resource.
  • Resource groups are not a network boundary, region boundary, or identity boundary.
  • A resource can belong to only one resource group.
  • Moving resources may require moving dependencies and may temporarily affect operations.
  • Tags support organization, automation, and cost reporting, but tags are not inherited automatically by default.

Governance controls: choose the right tool

NeedChooseWhy
Grant access to manage Azure resourcesAzure RBACAuthorization for management plane and supported data plane actions
Enforce allowed locations, SKUs, tags, naming, or required settingsAzure PolicyCompliance and guardrails; does not grant access
Prevent accidental deletion or modificationResource lockDelete or ReadOnly lock at subscription, RG, or resource scope
Group policies togetherPolicy initiativeAssign one set of policy definitions as a compliance baseline
Organize many subscriptionsManagement groupsHierarchical governance above subscriptions
Track cost or ownershipTagsMetadata for reporting and automation

Azure RBAC roles and traps

RoleCan doCannot do / trap
OwnerManage resources and assign accessVery broad; avoid when User Access Administrator is enough
ContributorManage resourcesCannot assign RBAC access
ReaderView resourcesCannot modify resources
User Access AdministratorManage role assignmentsDoes not itself manage all resources
Storage Blob Data ReaderRead blob dataData-plane access, not general storage account management
Storage Blob Data ContributorRead/write/delete blob dataStill needs network path if firewall/private access blocks traffic

Common traps:

  • Management-plane vs data-plane: Contributor on a storage account can manage the account, but blob data access often requires a Storage Blob Data role or keys/SAS.
  • Deny assignments can override allow assignments.
  • Locks do not grant permissions. A user still needs RBAC access.
  • A Delete lock prevents resource deletion; a ReadOnly lock can block management operations that normally write or retrieve keys.
  • Azure Policy can deny or audit deployments, but it does not authenticate users.

Microsoft Entra ID objects

ObjectUseExam distinction
UserHuman identityCan be cloud-only or synchronized from on-premises identity
Guest userExternal collaboration identityInvited into tenant; access controlled by Entra ID and RBAC
GroupAssign access to many identitiesPrefer group-based role assignment for manageability
Dynamic groupMembership by ruleUseful for large or changing populations
Service principalApplication identityUsed by apps, scripts, automation
Managed identityAzure-managed service principalNo credential storage by user; best for Azure resources accessing Azure services
App registrationApplication definition in Entra IDCreates identity metadata; enterprise app/service principal represents instance in tenant

Managed identity decision table

ScenarioChooseReason
One Azure VM, web app, function, or automation resource needs Azure accessSystem-assigned managed identityLifecycle tied to the resource
Multiple resources need the same identity and permissionsUser-assigned managed identityReusable identity with independent lifecycle
Non-Azure app or external CI system needs accessService principal or workload identity patternManaged identity is for supported Azure-hosted resources
Script currently stores storage keys or passwordsManaged identity plus RBACReduces secret handling

Azure Policy effects

EffectWhat it doesTypical cue
DenyBlocks non-compliant create/update“Prevent public IPs”
AuditMarks non-compliant resources“Report but do not block”
Append / ModifyAdds or changes properties“Add required tag or setting”
DeployIfNotExistsDeploys related configuration“Ensure diagnostic settings exist”
DisabledTurns policy offTesting or staged rollout

Policy remediation reminders:

  • Existing non-compliant resources are not always fixed automatically.
  • Remediation for deploy/modify effects may need a managed identity.
  • Compliance evaluation is not the same as access authorization.

Storage quick reference

Storage service selection

NeedAzure storage optionNotes
Object storage for unstructured dataBlob StorageContainers, blobs, tiers, lifecycle rules
SMB/NFS file shareAzure FilesLift-and-shift file share scenarios
Big data analytics namespaceData Lake Storage Gen2Storage account with hierarchical namespace
Simple NoSQL key/attribute storeTable StorageLightweight structured storage
Message queue for decouplingQueue StorageBasic queueing; not the same as Service Bus
Disk for Azure VMManaged diskOS/data disks; snapshots and images
Large data transfer to AzureAzCopy, Storage Explorer, Azure Data BoxChoose by size, network, and operational constraints

Storage account and redundancy choices

ChoiceUse whenKey distinction
Locally redundant storage, LRSLowest-cost local durability is acceptableReplicates within one datacenter/region facility design
Zone-redundant storage, ZRSNeed resilience across availability zonesSynchronous zone resilience within supported regions
Geo-redundant storage, GRSNeed regional disaster resilienceSecondary region replica; failover changes account state
Read-access GRS, RA-GRSNeed read access to secondary copy before failoverRead endpoint available for secondary
Geo-zone-redundant storage, GZRSNeed zone plus geo resilienceCombines zone resilience with regional replica
Read-access GZRS, RA-GZRSNeed read access to secondary plus zone resilienceStrongest common read-resilient pattern

Exam traps:

  • Redundancy choice is made for the storage account, not for individual blobs.
  • Changing redundancy can have restrictions depending on source/target combination.
  • Geo-redundancy helps with regional failure, not accidental deletion. Use soft delete/versioning/backup patterns for that.

Blob access tiers and protection

FeatureUse forTrap
Hot tierFrequently accessed dataHigher storage cost, lower access cost profile
Cool/Cold tiersInfrequently accessed dataRetrieval and minimum-retention considerations may apply
Archive tierRarely accessed offline dataMust rehydrate before normal read access
Lifecycle managementAutomatically tier/delete blobsRule-based; align with retention needs
Blob soft deleteRecover deleted blobsNot a substitute for access control
VersioningRecover previous blob versionsCan increase storage consumption
Immutability policyWORM-style retentionUseful for compliance scenarios
Legal holdPreserve data until clearedNot based on a time period

Storage security decision table

NeedChooseNotes
User/app access to blob data without keysMicrosoft Entra ID plus Azure RBACPreferred for identity-based access
Fine-grained ADLS Gen2 directory/file permissionsPOSIX-style ACLsRequires hierarchical namespace
Temporary delegated accessSASLimit permissions, scope, and expiry
SAS based on Microsoft Entra credentials for blobsUser delegation SASPreferred over account SAS when applicable
Block public internet pathStorage firewall and private endpointPrivate endpoint gives private IP in VNet
Allow selected VNets to reach storage public endpointService endpointTraffic stays on Azure backbone but uses public service endpoint
Rotate shared credentialsRegenerate storage account keysApps using old key must be updated
Encrypt with customer-managed keyKey Vault plus CMK configurationRequires correct identity and Key Vault permissions

Azure Files cues

ScenarioConsiderWhy
Replace on-premises SMB shareAzure FilesManaged file share
Cache Azure file share on Windows ServerAzure File SyncLocal cache with cloud tiering
Need private access to file sharePrivate endpointAvoid public exposure
Need identity-based SMB accessEntra Kerberos / AD DS integration optionsMatch environment and client requirements
Need backup for file shareAzure BackupProtects against deletion/corruption scenarios

Storage commands to recognize

## Create a resource group and storage account
az group create --name rg-demo --location eastus
az storage account create \
  --name mystorageacctdemo \
  --resource-group rg-demo \
  --location eastus \
  --sku Standard_LRS

## Upload with AzCopy using a SAS URL
azcopy copy "./data/*" "https://ACCOUNT.blob.core.windows.net/CONTAINER?SAS" --recursive=true

## Show storage account network rules
az storage account network-rule list \
  --resource-group rg-demo \
  --account-name mystorageacctdemo

Compute quick reference

VM availability and scaling

RequirementChooseWhy
Protect against host/rack maintenance faults inside a datacenterAvailability setFault domains and update domains
Protect against datacenter failure within a regionAvailability zonesSeparate physical zones in supported regions
Run many identical VMs with autoscaleVirtual Machine Scale SetsScale out/in and consistent model
Keep VMs physically close for low latencyProximity placement groupPlacement optimization, not HA by itself
Create repeatable VM deploymentsARM template or BicepDeclarative infrastructure
Standardize VM imagesAzure Compute GalleryVersioned image distribution
Run startup configurationCustom Script Extension / cloud-initPost-deployment automation

VM administration tasks

TaskTool / conceptExam cue
Reset local admin passwordVM access extension / portal reset password“Cannot sign in to VM”
Diagnose boot issuesBoot diagnostics, serial console“VM fails to boot”
Apply patchesAzure Update Manager“Assess and install updates”
Run command without direct loginRun CommandUseful when RDP/SSH is unavailable
Change VM sizeResize VMMay require deallocation if size unavailable on current host
Move VM to another hostRedeployTroubleshoot host-level issues
Protect VM dataAzure BackupRecovery points in vault
Replicate VM for DRAzure Site RecoveryFailover/failback orchestration

Managed disks

Disk conceptUseTrap
OS diskBoot volumeOne OS disk per VM
Data diskApplication/data storageAttach multiple based on VM capability
Temporary diskLocal ephemeral storageNot durable; do not store critical data
SnapshotPoint-in-time disk copyUseful before risky changes
ImageTemplate for new VMsGeneralize when required by image process
Server-side encryptionDefault platform encryptionCMK requires Key Vault integration
Azure Disk EncryptionGuest OS encryptionDifferent from storage service-side encryption

App hosting and container choices

RequirementChooseWhy
Host web app/API with minimal server adminApp ServiceManaged platform, scaling, deployment slots
Blue/green or staged web deploymentApp Service deployment slotsSwap after validation
Run a single container quicklyAzure Container InstancesSimple container execution, no orchestrator
Manage container imagesAzure Container RegistryPrivate registry integrated with Azure
Orchestrate containers at scaleAzure Kubernetes ServiceCluster scheduling, node pools, Kubernetes control
Run background/serverless event codeAzure FunctionsEvent-driven compute, not VM administration

App Service cues

ConceptRemember
App Service planDefines compute region, pricing tier, scale capacity for apps
Web appApplication running on an App Service plan
Deployment slotSeparate live app endpoint; can swap with production
Scale upChange plan size/tier
Scale outAdd instances
Custom domain/TLSRequires domain validation and certificate binding
Managed identityLets app access Key Vault, Storage, SQL, etc. without secrets

Compute commands to recognize

## Create a VM with SSH key authentication
az vm create \
  --resource-group rg-demo \
  --name vm-demo \
  --image Ubuntu2204 \
  --admin-username azureuser \
  --generate-ssh-keys

## Open inbound port through NSG rule
az vm open-port \
  --resource-group rg-demo \
  --name vm-demo \
  --port 22

## Assign a system-managed identity to a VM
az vm identity assign \
  --resource-group rg-demo \
  --name vm-demo

Networking quick reference

Subnet sizing

Azure reserves addresses in each subnet. For IPv4 subnet planning, a common exam calculation is:

\[ \text{usable IPv4 addresses} = 2^{(32-\text{prefix length})} - 5 \]

Examples:

PrefixTotal addressesUsable in Azure
/24256251
/273227
/2983

Core network components

ComponentPurposeTrap
VNetPrivate network boundary in AzureVNets are regional
SubnetIP range inside VNetSome services require dedicated subnets
NICVM network interfaceNSG can apply at NIC and subnet
NSGStateful L3/L4 filteringLower priority number wins
ASGLogical grouping for NICs in NSG rulesSimplifies rules; does not contain subnets
Route table / UDRCustom routingCan force traffic to NVA/firewall
Public IPInternet-reachable frontendSKU and zone choices matter in design
NAT GatewayOutbound internet SNAT for subnetDoes not provide inbound publishing
VNet peeringPrivate connectivity between VNetsNon-transitive by default
Private DNS zoneName resolution for private endpoints and VNetsLink zone to VNets that need resolution

NSG rule evaluation

Rule attributeExam point
PriorityLower number processed first
DirectionInbound and outbound rules are separate
Source/destinationCan use IP, service tag, or ASG
Port/protocolL4 filtering; not URL/path inspection
Default rulesAllow VNet-internal and outbound internet; deny unsolicited inbound internet
Stateful behaviorReturn traffic for allowed flow is automatically allowed

If traffic fails, check both subnet-level and NIC-level NSGs. Effective security rules show the combined result.

Routing decision points

RequirementChooseNotes
Force subnet traffic through firewall/NVAUDR with virtual appliance next hopEnsure appliance can forward traffic
Connect VNets in same or different regionsVNet peeringLow-latency private IP connectivity
Let peered VNet use central VPN gatewayGateway transit / use remote gatewayConfigure on peering; avoid overlapping address spaces
Site-to-site encrypted tunnelVPN GatewayUses public internet with IPsec/IKE
Private dedicated connectivityExpressRouteDoes not traverse public internet
Resolve private endpoint namesPrivate DNS zoneRequired for clean private-name resolution

Route selection reminders:

  • Longest prefix match is evaluated first.
  • User-defined routes override default system routes for matching prefixes.
  • BGP routes from gateways can affect effective routes.
  • VNet peering is not automatically transitive; hub-spoke designs need explicit routing.

Connectivity and edge service selection

RequirementChooseLayer / key distinction
Distribute TCP/UDP inside a regionAzure Load BalancerLayer 4
HTTP/HTTPS routing, WAF, path-based routingApplication GatewayRegional Layer 7
Global HTTP/HTTPS acceleration and WAFAzure Front DoorGlobal Layer 7 edge
DNS-based global traffic distributionTraffic ManagerDNS response routing, not a proxy
Central network firewallAzure FirewallManaged firewall with rules and threat intelligence features
Secure VM browser-based accessAzure BastionRDP/SSH through portal/private path
Outbound internet for private subnetsNAT GatewayScalable outbound SNAT
Private access to PaaS over private IPPrivate Endpoint / Private LinkNIC with private IP in your VNet
Restrict PaaS to selected VNet while using public endpointService EndpointSimpler, but not private IP to service

Private Endpoint vs Service Endpoint

FeaturePrivate EndpointService Endpoint
Service reached by private IPYesNo
Uses private DNS integrationCommonly requiredUsually not
Removes need for public service exposureYesNot fully; service public endpoint still exists
Simpler to configureMore componentsSimpler
Best cue“Access PaaS privately from VNet/on-premises”“Allow only this VNet/subnet to access service endpoint”

DNS quick reference

NeedUse
Host public DNS zoneAzure DNS public zone
Resolve private names inside VNetsAzure Private DNS zone
Auto-register VM recordsPrivate DNS zone with registration-enabled VNet link
Resolve on-premises and Azure namesCustom DNS servers / DNS forwarding design
Private endpoint name resolutionPrivate DNS zone for service-specific zone

Network troubleshooting workflow

SymptomCheck firstThen check
Cannot RDP/SSH to VMNSG inbound rule, public IP/Bastion, VM OS firewallRoute table, effective security rules, VM boot diagnostics
VM has no outbound internetUDR, NAT Gateway/public IP, NSG outboundDNS, appliance forwarding, Azure Firewall rules
Peered VNets cannot communicateAddress overlap, peering status, NSGsUDRs, gateway transit, remote gateway settings
Private endpoint resolves public IPPrivate DNS zone and VNet linkDNS forwarding and record set
App behind load balancer unavailableHealth probeBackend pool, NSG allowing probe and app port

Monitoring, logging, and maintenance

Azure Monitor data sources

DataWhere it comes fromUse
MetricsNumeric platform measurementsFast alerting, charts
Activity LogSubscription-level control-plane eventsWho did what to Azure resources
Resource logsService-specific diagnostic logsData-plane and service behavior
Guest logs/performanceAgent-collected VM dataOS and workload troubleshooting
Log Analytics workspaceCentral query storeKQL queries across logs
Application InsightsApp telemetryRequests, dependencies, exceptions

Diagnostic settings

DestinationUse when
Log Analytics workspaceQuery, alert, correlate
Storage accountArchive logs
Event HubStream to SIEM or external system
Partner solutionIntegrated third-party monitoring/security

High-yield trap: A resource may emit metrics automatically, but detailed resource logs often require diagnostic settings.

Alert selection

NeedAlert type
CPU, availability, count, latency thresholdMetric alert
Query-based condition across logsLog search alert
Administrative event such as delete or service health eventActivity Log alert
Notify people or trigger automationAction group
Suppress alerts during maintenanceAlert processing rule

KQL patterns to recognize

// Recent administrative delete operations
AzureActivity
| where OperationNameValue has "delete"
| project TimeGenerated, Caller, ResourceGroup, ResourceProviderValue, ActivityStatusValue

// VMs that stopped sending heartbeat
Heartbeat
| summarize LastSeen=max(TimeGenerated) by Computer
| where LastSeen < ago(15m)

Backup and recovery choices

RequirementChooseNotes
Protect Azure VMs with restore pointsAzure BackupCommonly managed through Recovery Services vault
Protect Azure file sharesAzure Backup for Azure FilesRecovery for share data
Replicate workloads for regional DRAzure Site RecoveryFailover and recovery plans
Short-term disk copy before changeDisk snapshotNot a full backup strategy by itself
Recover deleted storage dataSoft delete/versioningMust be enabled/configured as appropriate
Monitor backup healthBackup Center / vault monitoringCentral operational view

Backup traps:

  • Backup protects against deletion/corruption; availability zones protect against infrastructure failure. They solve different problems.
  • Vault redundancy and resource redundancy are separate design choices.
  • Site Recovery is for replication/failover, not routine file-level backup.

Maintenance and optimization

NeedAzure feature
Patch assessment and deploymentAzure Update Manager
Configuration drift/governanceAzure Policy compliance
Cost visibility and budgetsMicrosoft Cost Management
RecommendationsAzure Advisor
Service incident awarenessAzure Service Health
Resource health statusAzure Resource Health

High-yield scenario decisions

Access denied checklist

  1. Confirm the identity: user, group, service principal, or managed identity.
  2. Confirm the scope: management group, subscription, resource group, or resource.
  3. Check role assignment inheritance.
  4. Check whether the task is management plane or data plane.
  5. Check deny assignments, policy deny effects, and locks.
  6. For PaaS data access, check firewall, private endpoint, and DNS.
  7. If using PIM or just-in-time access, confirm activation.

“Cannot deploy resource” checklist

CheckWhy
Subscription/resource provider registeredSome resource types require provider registration
Region supports resource/SKUNot all services/SKUs are everywhere
Azure Policy assignmentDeny policies can block deployment
Quota/capacitySubscription or regional capacity can block scale
RBAC permissionsContributor may be needed; Owner/User Access Admin for role assignments
Naming requirementsMany Azure resources require globally unique or pattern-compliant names
DependenciesSubnets, identities, Key Vault permissions, private DNS, and managed disks often matter

“Need high availability” quick choices

WorkloadFirst design choices
Single VM workloadAvailability zone or availability set plus backup
Multi-VM web tierVM Scale Sets or multiple VMs behind Load Balancer/Application Gateway
Regional web appApp Service scale-out plus zone redundancy if supported by selected plan/region
Global HTTP appFront Door or Traffic Manager with regional backends
Storage dataAppropriate redundancy plus soft delete/versioning/lifecycle
Disaster recoveryBackup for restore; Site Recovery for failover

Common exam traps

TrapCorrect thinking
“Policy will let the user deploy”Policy enforces; RBAC grants
“Contributor can assign access”Need Owner or User Access Administrator
“Service endpoint means private IP”Private Endpoint provides private IP
“Load Balancer can route by URL path”Use Application Gateway or Front Door for Layer 7
“Traffic Manager sends traffic through itself”It returns DNS answers; it is not an inline proxy
“VNet peering is transitive”It is not transitive by default
“Backup equals high availability”Backup is recovery; HA keeps service running
“ReadOnly lock only affects portal edits”It affects management-plane write operations broadly
“Tags inherit automatically”They do not by default; use policy/automation if needed
“Blob archive can be read immediately”Archive must be rehydrated first

Compact command reference

## Select subscription
az account set --subscription "<subscription-id-or-name>"

## Create a resource group
az group create --name rg-app-prod --location eastus

## Assign a built-in role at resource group scope
az role assignment create \
  --assignee "<user-or-principal-id>" \
  --role "Contributor" \
  --resource-group rg-app-prod

## Deploy an ARM/Bicep template to a resource group
az deployment group create \
  --resource-group rg-app-prod \
  --template-file main.bicep \
  --parameters @parameters.json

## View effective routes for a NIC
az network nic show-effective-route-table \
  --resource-group rg-app-prod \
  --name nic-vm01

## View effective NSG rules for a NIC
az network nic list-effective-nsg \
  --resource-group rg-app-prod \
  --name nic-vm01

PowerShell equivalents often appear in admin tasks:

Connect-AzAccount
Set-AzContext -Subscription "<subscription-id-or-name>"

New-AzResourceGroup -Name "rg-app-prod" -Location "eastus"

New-AzRoleAssignment `
  -SignInName "user@contoso.com" `
  -RoleDefinitionName "Reader" `
  -ResourceGroupName "rg-app-prod"

Get-AzEffectiveRouteTable `
  -NetworkInterfaceName "nic-vm01" `
  -ResourceGroupName "rg-app-prod"

Final review checklist

Before your next AZ-104 practice block, make sure you can:

  • Choose between RBAC, Policy, locks, tags, and management groups.
  • Distinguish management-plane access from data-plane access.
  • Select storage redundancy, access tier, SAS/RBAC model, and private connectivity pattern.
  • Choose VM availability sets, availability zones, scale sets, App Service, ACI, or AKS based on scenario wording.
  • Troubleshoot NSGs, UDRs, peering, DNS, private endpoints, and load balancer probes.
  • Configure diagnostic settings, alerts, Log Analytics queries, Backup, and Site Recovery at a conceptual admin level.

Next step: use this Quick Reference beside timed, scenario-based AZ-104 practice questions, then turn every missed question into a one-line rule or troubleshooting checklist.

Browse Certification Practice Tests by Exam Family