🛠️

🔷 Microsoft Azure

Free Microsoft Azure Administrator (AZ-104) Study Resources

Administer Azure the way the exam tests it — identity and governance, storage, compute, virtual networking, and monitoring, mapped 1:1 to the official skills measured.

448
Practice Questions
35
Study Notes
254
Flashcards

Microsoft Azure Administrator (AZ-104) Study Notes & Guides

35 AI-generated study notes covering the full Microsoft Azure Administrator (AZ-104) curriculum. Showing 10 complete guides below.

Exam Map391 words

AZ-104 exam map

AZ-104

Read full article

AZ-104 exam map

What the exam states about itself

2026-04-17
5
15
82
100 minutes
700 of 1000

What AZ-104 certifies

AZ-104 certifies an administrator — somebody who operates an Azure estate rather than designing one. That shows up in the wording of the objectives: they are overwhelmingly verbs you perform, not judgements you defend. Configure, manage, create, troubleshoot, interpret. Where a design exam asks which architecture is right, this one asks which setting you would change and where you would change it.

Read that as a study instruction. Being able to describe a service is not the bar; being able to say which blade, scope or command changes its behaviour is.

The blueprint

Skill areaPublished rangeSub-areasObjectivesBank questions
1. Manage Azure identities and governance20–25%31599
2. Implement and manage storage15–20%31776
3. Deploy and manage Azure compute resources20–25%42499
4. Implement and manage virtual networking15–20%313107
5. Monitor and maintain Azure resources10–15%21367

The order worth taking

  1. Unit 1, identities and governance. Scope is the idea the rest of the exam assumes you already have.
  2. Unit 4, networking. It is the largest question surface in this bank and the one most often failed on a path question rather than a knowledge question.
  3. Unit 3, compute. The widest unit by objective count. Long, but each sub-area is self-contained.
  4. Unit 2, storage. Two clean families of question, quick to consolidate once units 1 and 4 are solid.
  5. Unit 5, monitoring and recovery. Smallest by weight, and the one candidates most often leave short.

Units 1 and 4 first is a deliberate inversion of the published order. Scope and network paths are the two ideas that other units silently depend on, so learning them late means re-reading everything that assumed them.

What this hive gives you

Study assets in this hive

448
24, in 6 groups
254
82 — one per objective
6, of 67 questions each

The flashcard deck pins to objective depth rather than topic depth, so coverage is verifiable one objective at a time — every one of the 82 has its own collection. The six mocks share no question with each other and each carries one complete case study, so they can be sat as six independent attempts.

Check yourself

Loading flashcards…

Traps that span the whole exam

Every one of those is a reading failure rather than a knowledge failure, which is why working questions beats re-reading notes once you are past the first pass.

Unit Roadmap358 words

Unit 1 roadmap — Manage Azure identities and governance

AZ-104 › Unit 1

Read full article

Unit 1 roadmap — Manage Azure identities and governance

Unit 1 at a glance

20–25%
3
15
99
51

What this unit is really testing

Unit 1 is about who may act, where they may act, and what the platform will let them leave behind. Almost every question resolves to a scope question: an assignment made at the wrong level is the single most common way an administrator grants too much or too little. Read every stem for the scope first — management group, subscription, resource group, resource — and only then for the permission.

The order to work through it

  1. Start with identity objects, because everything else is granted to one: users, groups, and how membership is decided.
  2. Move to Azure role-based access control, and hold the distinction between directory roles and resource roles firmly. They are two systems that share a portal.
  3. Finish with governance, which is the widest surface: policy, locks, tags, resource groups, subscriptions, cost control and management groups.

Topic map

Every objective title below is quoted from Microsoft's skills-measured outline, as of 2026-04-17.

Manage Microsoft Entra users and groups

AZ104-U1.T1 · 5 objectives

  • Create users and groups
  • Manage user and group properties
  • Manage licenses in Microsoft Entra ID
  • Manage external users
  • Configure self-service password reset (SSPR)

Manage access to Azure resources

AZ104-U1.T2 · 3 objectives

  • Manage built-in Azure roles
  • Assign roles at different scopes
  • Interpret access assignments

Manage Azure subscriptions and governance

AZ104-U1.T3 · 7 objectives

  • Implement and manage Azure Policy
  • Configure resource locks
  • Apply and manage tags on resources
  • Manage resource groups
  • Manage subscriptions
  • Manage costs by using alerts, budgets, and Azure Advisor recommendations
  • Configure management groups

Traps

Check yourself

Loading flashcards…

Are you ready to move on?

  • You can state this unit's published range without looking it up.
  • You can name every sub-area and say what separates it from its neighbours.
  • You can explain each trap above to somebody else, in your own words.
  • You have worked the unit's 99 bank questions and can say why the wrong options are wrong.

When all four are true, take a blueprint-weighted mock rather than more of this unit. A mock is the only asset here that tells you how this unit performs against the other four under time.

Unit Capstone810 words

Unit 1 capstone — Onboarding an acquired subsidiary

AZ-104 › Unit 1 › Capstone

Read full article

Unit 1 capstone — Onboarding an acquired subsidiary

Contoso acquires Northwind

AZ104-U1
3
15
6
25 minutes

The brief

Contoso has acquired Northwind, a 400-person business with its own Microsoft Entra tenant. Northwind's staff keep their existing sign-ins for at least a year. Their engineering contractors need to look at one Contoso resource group and nothing else. Contoso's own service desk must be able to grant access to Northwind staff — but only inside the subscription set aside for the integration, and without becoming able to change resources. Finance has been surprised by cloud spend twice this year and wants it not to happen again. Nothing in the production resource group may be deleted while the migration runs, and every resource created during it must be attributable to a cost centre.

What they need

  1. Northwind's 400 staff sign in with their existing credentials, without Contoso creating and managing 400 new accounts.
  2. Northwind's contractors can read one Contoso resource group and nothing else.
  3. The service desk can grant others access inside the integration subscription, but cannot change the resources in it.
  4. Every resource created in the integration subscription carries a cost-centre tag, whether or not the person creating it remembers.
  5. Nothing in the production resource group can be deleted during the migration.
  6. Finance is told when the integration subscription passes 80% of its monthly budget.

Commit before you read on

Write down your answer to each of the 6 numbered requirements above — the mechanism, and the scope you would apply it at. Then open the working below and compare. Reading the reasoning beside the question is the one way to feel like you knew it without having known it.

▶Show the working

1. 400 staff, their own credentials

B2B collaboration guests.

The partner uses their own identity management, so there is no account lifecycle for Contoso to run. Guests appear in the directory as user objects whose user principal name contains the #EXT# identifier. Note the side effect to control deliberately: by default every user in the organization, including existing guests, can invite more guests. If that is not wanted, external collaboration settings are the place to restrict it — not a role assignment.

2. Contractors read one resource group

Reader, assigned at the resource group scope.

Reader grants viewing and no changes. The examinable half is the scope: assign it at the resource group, not the subscription, because lower levels inherit from higher levels and there is no way to subtract an inherited assignment lower down. Assign to a group rather than to each contractor — a group is a security principal, so one assignment does the work of many.

3. Service desk grants access but cannot change resources

User Access Administrator at the subscription scope.

This is the requirement that eliminates the two obvious answers. Contributor grants full access to manage all resources but explicitly not the ability to assign roles — so it fails the first half. Owner grants full access including role assignment — so it fails the second. Only the role that separates access management from resource management satisfies both.

4. Every resource carries a cost-centre tag

An Azure Policy assignment that requires — or appends — the tag.

Tagging the resource group does nothing for its contents: resources don't inherit the tags you apply to a resource group or a subscription. Policy is the mechanism that makes a tag arrive on the resource. And note what policy is doing here — governing the state a resource may be in, not anybody's access.

5. Nothing deletable in production

A CanNotDelete lock at the resource group scope.

The portal calls it Delete; the command line calls it CanNotDelete. It lets authorized users read and modify but not delete, it is inherited by everything in the scope including resources added later, and the most restrictive lock in the chain wins. It is a control-plane guard, so it does not protect data inside a resource — which is not what was asked for here.

6. Finance told at 80% of budget

A budget with an alert at the 80% threshold.

And the sentence that decides the wrong answers: notifications are triggered when thresholds are exceeded, resources aren't affected, and consumption isn't stopped. A budget notifies. If the stem had said "prevent overspend", no budget would answer it. Budgets are evaluated every 24 hours, so this is not a real-time control either.

The reasoning this unit rewards

Check yourself

Loading flashcards…

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Build Lab166 words

Lab — A budget notifies and stops nothing

AZ-104 › Unit 1 › Lab

Read full article

Lab — A budget notifies and stops nothing

Lab brief

AZ104-U1.T3
15 minutes
A budget and an action group
required
Foundational

The shortest lab in the set, and it exists for one sentence: resources aren't affected, and your consumption isn't stopped. Every learner nods at that and a third of them still answer 'budget' when a stem says 'prevent overspend'.

Before you start

A subscription you can read cost data on. A budget is a cost-management object and creates no billable resource.

Walkthrough

A budget notifies and stops nothing

  1. 1. Create a budget below your current spend

    Set the amount deliberately low — below what the subscription has already used this period — so the threshold is already exceeded and you do not have to wait for reality to catch up.

Did it teach you what it was meant to?

Multiple choice · EasyWhat a budget does

Step 4 deployed a resource with the budget already exceeded. What does a budget do at that moment?

Multiple choice · MediumBudget evaluation timing

Why is a budget a poor answer to 'alert us the moment a runaway script starts spending'?

What goes wrong

Tear it down

Run this whether or not the lab worked. Everything above was chosen to cost approximately nothing, and leaving it in place is how approximately nothing becomes something.

Teardown

  1. Delete the budget and the action group

    Neither costs anything, but a budget with a deliberately wrong amount left in place will keep emailing somebody every day, which is its own small punishment.

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Build Lab212 words

Lab — Prove that inheritance only flows one way

AZ-104 › Unit 1 › Lab

Read full article

Lab — Prove that inheritance only flows one way

Lab brief

AZ104-U1.T2
25 minutes
Two resource groups, a role assignment, a custom role definition
required
Core

The claim to make physical: you cannot narrow an inherited assignment from below. Everybody knows lower levels inherit from higher. Far fewer have watched an attempt to subtract fail.

Before you start

A subscription where you can create role assignments — that needs Owner or User Access Administrator on it. Resource groups and role definitions are free; nothing here deploys a billable resource.

Walkthrough

Prove that inheritance only flows one way

  1. 1. Create two resource groups

    az group create --name bb-lab-rbac-a --location westeurope and again for bb-lab-rbac-b. A resource group holds metadata about resources, so its location is where that metadata lives — resources inside one may sit in different regions.

Did it teach you what it was meant to?

Multiple choice · HardScope and inheritance

A principal has Reader at the subscription. You need them to keep reading resource group A but lose access to B. What does step 3 show you must do?

Multiple choice · MediumBuilt-in roles

Step 5 showed the boundary between two built-in roles. Which requirement does Contributor fail?

What goes wrong

Tear it down

Run this whether or not the lab worked. Everything above was chosen to cost approximately nothing, and leaving it in place is how approximately nothing becomes something.

Teardown

  1. Remove the assignment, then the resource groups

    az role assignment delete for anything left, then az group delete --name bb-lab-rbac-a and the same for bb-lab-rbac-b. Deleting the resource groups removes anything inside them.

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Build Lab204 words

Lab — Tags do not inherit, and a lock is not a permission

AZ-104 › Unit 1 › Lab

Read full article

Lab — Tags do not inherit, and a lock is not a permission

Lab brief

AZ104-U1.T3
25 minutes
A resource group, a tag, a policy assignment, a lock
required
Core

Two claims in one sitting: resources do not inherit a resource group's tags, and a lock stops a delete even when your role permits it. Both are one command away from being obvious.

Before you start

A subscription and the ability to create policy assignments and locks on it. Everything created here is a governance object or an empty resource group; none of it is billable.

Walkthrough

Tags do not inherit, and a lock is not a permission

  1. 1. Create a tagged resource group

    az group create --name bb-lab-gov --location westeurope --tags costCenter=1234. The tag is on the group.

Did it teach you what it was meant to?

Multiple choice · MediumTag inheritance

Step 2 showed an untagged resource inside a tagged resource group. What does that rule out as a design?

Multiple choice · HardLocks versus permissions

In step 5 the delete was refused although your role allows it. Which statement does that experiment support?

What goes wrong

Tear it down

Run this whether or not the lab worked. Everything above was chosen to cost approximately nothing, and leaving it in place is how approximately nothing becomes something.

Teardown

  1. Remove the lock first, then the assignment, then the group

    The order matters and it is the lab's last lesson: az lock delete for the lock, az policy assignment delete --name --scope $rgid for the assignment, then az group delete --name bb-lab-gov. With the lock still in place, the group delete is refused.

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Build Lab183 words

Lab — Watch a dynamic group fill itself in

AZ-104 › Unit 1 › Lab

Read full article

Lab — Watch a dynamic group fill itself in

Lab brief

AZ104-U1.T1
20 minutes
Directory users and groups
required
Core

The claim to make physical: membership type is decided once. A group that can carry Entra roles is forced to Assigned and can never become dynamic — and you find that out by trying it, not by reading it.

Before you start

An Azure subscription and the Groups Administrator or User Administrator role, which is what creating groups requires. Sign in with az login first. Directory objects are not billable resources.

Walkthrough

Watch a dynamic group fill itself in

  1. 1. Create two users with different departments

    Create two users with az ad user create (it requires --display-name, --password and --user-principal-name). ⚠ It has no --department parameter, and neither does az ad user update — the CLI cannot write that attribute at all. Set one user's department to Engineering and the other's to Finance in the Entra admin center, or through Graph: az rest --method PATCH --url https://graph.microsoft.com/v1.0/users/OBJECT-ID --headers Content-Type=application/json --body '{"department":"Engineering"}'. Note the object ids; you will want them in step 4.

Did it teach you what it was meant to?

Multiple choice · MediumGroup membership types

You watched a user join a group in step 4 without anybody adding them, then watched the portal refuse to change membership type in step 5. Which requirement can a role-assignable group NOT satisfy?

Multiple choice · MediumDynamic membership licensing

Your tenant has 40 Microsoft Entra ID P1 licences and 250 users would match your dynamic rule. What does the documentation require?

What goes wrong

Tear it down

Run this whether or not the lab worked. Everything above was chosen to cost approximately nothing, and leaving it in place is how approximately nothing becomes something.

Teardown

  1. Delete the three groups, then the two users

    Use az ad group delete for each group and az ad user delete for each user. Directory objects cost nothing, but leaving test principals in a directory is how a stale account outlives the person who made it.

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Topic Cram Sheet447 words

Cram sheet — Manage access to Azure resources

AZ-104 › Unit 1 › Manage access to Azure resources

Read full article

Cram sheet — Manage access to Azure resources

Manage access to Azure resources

AZ104-U1.T2
3
25
5

Three objectives, twenty-five bank questions, and almost all of them turn on one of two things: the scope an assignment was made at, or the difference between what a role grants and what something else takes away.

The anatomy of an assignment

  • A role assignment has exactly three elements: a security principal, a role definition, and a scope. Every RBAC question is really asking about one of the three.
  • A security principal is a user, a group, a service principal, or a managed identity.
  • Access is granted by creating an assignment and revoked by removing one. There is no deny switch in the middle of that, which is why the deny-assignment section below matters.

Scope: four levels, inherited downwards

  • Scope can be set at four levels: management group, subscription, resource group, and resource.
  • Lower levels inherit role permissions from higher levels. An assignment at the subscription reaches every resource group and resource beneath it, and there is no way to subtract from it with another role assignment.
  • Because inheritance only flows one way, the fix for over-broad access is always to move the assignment down, never to add a narrower one alongside it.

The three roles you must be able to separate

RoleWhat the documentation says it grants
OwnerFull access to manage all resources, including the ability to assign roles in Azure RBAC
ContributorFull access to manage all resources, but not the ability to assign roles, manage Blueprint assignments, or share image galleries
ReaderView all resources, but no changes

The line between Owner and Contributor is role assignment, and it is the single most-tested distinction in this topic. If a stem says somebody must grant access to others, Contributor is wrong.

Deny assignments and custom roles

  • A deny assignment blocks actions even if a role assignment grants them. Deny wins.
  • You cannot create deny assignments yourself. They are created and managed by Azure — a deployment stack's deny settings are the one way an administrator causes one to exist.
  • A tenant may hold up to 5,000 custom roles. (For Microsoft Azure operated by 21Vianet the limit is 2,000.) Custom roles can be shared between subscriptions that trust the same tenant.

Traps

Check yourself

Loading flashcards…

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Topic Cram Sheet841 words

Cram sheet — Manage Azure subscriptions and governance

AZ-104 › Unit 1 › Manage Azure subscriptions and governance

Read full article

Cram sheet — Manage Azure subscriptions and governance

Manage Azure subscriptions and governance

AZ104-U1.T3
7
59
7

The heaviest topic in the bank — fifty-nine questions across seven objectives — and the one where exact numbers earn marks. Locks, tags and management groups all have published limits, and the command line uses names the portal does not.

Locks: two levels, two sets of names

Portal nameCommand-line nameWhat it allows
DeleteCanNotDeleteAuthorized users can read and modify the resource, but not delete it
Read-onlyReadOnlyAuthorized users can read it, but not delete or update it
  • Note the command-line spelling: CanNotDelete, with a capital N. It is a favourite of question writers precisely because the portal never shows it.
  • A ReadOnly lock is described as similar to restricting all authorized users to the permissions the Reader role provides.
  • Locks inherit downwards: apply one at a parent scope and every resource inside it inherits the same lock, including resources added later. The most restrictive lock in the chain takes precedence.
  • Locks are a control-plane control. They protect a resource from changes but do not restrict how it performs its function — a ReadOnly lock on a database server still permits data to be written inside its databases.

Tags: the numbers

  • Maximum 50 tag name-value pairs per resource, resource group, and subscription — each, not combined.
  • Tag name limit 512 characters; tag value limit 256 characters. Storage accounts are the exception: their tag name limit is 128.
  • Resources do not inherit tags applied to a resource group or a subscription. If a stem asks for inherited tagging, the answer is a policy that applies them, not the tag itself.
  • Need more than 50? The documented workaround is a JSON string as a single tag value.

Management groups: the numbers

  • A single directory supports 10,000 management groups.
  • A management group tree supports up to six levels of depth — and that depth does not count the root.
  • Each management group and each subscription supports only one parent.
  • The root management group is named Tenant root group by default, its ID is the same value as the Microsoft Entra tenant ID, and it cannot be moved or deleted — unlike every other management group.

Resource groups hold metadata, not resources' locations

  • A resource group stores metadata about the resources, and the location you give it is where that metadata is stored — which is why the choice can matter for compliance.
  • Resources inside a resource group can be in different regions. A resource group is not a region boundary, and a stem that implies otherwise is testing exactly this.
  • Each resource belongs to exactly one resource group at a time; moving it is an explicit operation, not a property you edit.

Policy governs state; RBAC governs actions

This is the cleanest statement of the boundary, and it is worth memorising in the documentation's own terms:

  • Azure Policy ensures that resource state is compliant to your business rules without concern for who made the change or who has permission to make a change.
  • Azure RBAC focuses on managing user actions at different scopes.
  • And the sentence that decides the hardest questions in this topic: even if an individual has access to perform an action, if the result is a non-compliant resource, Azure Policy still blocks the create or update. Permission is not sufficient. Compliance is a second gate.

Policy effects are evaluated in order

The order matters because an earlier effect can prevent a later one from ever firing:

  1. disabled — checked first, to decide whether the rule is evaluated at all.
  2. append and modify — either can alter the request, and that change may stop an audit or deny from triggering.
  3. deny — evaluated before audit, which prevents double logging of a resource that was refused.
  4. audit, then manual, then auditIfNotExists.

A policy assignment governs the state a resource may be in. It never grants, denies or interprets a person's access — that is RBAC's job, and mixing them is the most common wrong answer in this topic.

Budgets do not stop anything

  • Notifications fire when a threshold is exceeded. Resources are not affected and consumption is not stopped. A budget is an alerting construct, not a spending cap.
  • Cost and usage data is typically available within 8 to 24 hours, and budgets are evaluated against it every 24 hours. A budget is not a real-time control either.
  • Budgets reset automatically at the end of each period — monthly, quarterly or annually — for the same amount. When a budget expires, it is automatically deleted.

Traps

Check yourself

Loading flashcards…

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

Topic Cram Sheet580 words

Cram sheet — Manage Microsoft Entra users and groups

AZ-104 › Unit 1 › Manage Microsoft Entra users and groups

Read full article

Cram sheet — Manage Microsoft Entra users and groups

Manage Microsoft Entra users and groups

AZ104-U1.T1
5
15
5

The examinable detail in this topic is rarely what a group is. It is what the platform refuses to let you change afterwards, what a feature costs in licensing, and which default is already switched on in a tenant nobody has configured.

Four user types, not two

A workforce tenant distinguishes where the account lives from what privileges it carries, and those are two independent axes rather than one:

TypeAccount livesPrivileges
Internal memberIn your tenantMember
Internal guestIn your tenantGuest
External memberAuthenticates externallyMember
External guestAuthenticates externallyGuest

External member is the one people forget. Such users authenticate with an external account but hold member access to your tenant, which is common in multitenant organizations. Guest and external are not synonyms.

Groups: the settings you cannot take back

  • Creating a group needs at least the Groups Administrator or User Administrator role. Being a global reader or an owner of the resource is not enough.
  • Turning on Microsoft Entra roles can be assigned to the group automatically selects Assigned as the membership type — and once that option is enabled, the membership type can no longer be changed. A role-assignable group is therefore never a dynamic group.
  • Nesting is allowed for security groups, but a nested group does not gain access to resources and applications assigned to its parent. If the requirement is inherited access to an app, nesting is the wrong answer.

Dynamic membership is a licensed feature

  • Dynamic membership groups require Microsoft Entra ID P1 — or an Intune for Education licence — for each unique user who is a member of one or more of them.
  • The licences do not have to be assigned to those users individually; the organization simply has to hold enough of them to cover every such user. A thousand unique users across all dynamic groups means at least a thousand P1 licences.
  • Device-based dynamic groups need no licence for the devices themselves.

External users

  • A B2B guest signs in with their own credentials from their own organization, and appears in your directory as a user object whose user principal name contains the #EXT# identifier.
  • By default, every user in the organization — including existing guests — can invite more guests. Restricting that is a configuration change, not the starting state.
  • Two different settings are routinely confused. Cross-tenant access settings control whether users can authenticate with external Microsoft Entra tenants, inbound and outbound. External collaboration settings control which of your own users may send invitations at all.

Self-service password reset

  • SSPR is not enabled for administrators by default — the tenant setting is for end users.
  • If an Azure administrator role is assigned to the user, the strong two-gate password policy is enforced regardless of the tenant's own SSPR policy.
  • The policy decides how many registered methods a reset needs — one or two — and a user who has not registered enough of them is told to contact an administrator rather than being let through.

Traps

Check yourself

Loading flashcards…

Where these figures come from

Every figure above was read from the raw documentation below on the day this sheet was written. The sha1 is git hash-object over the bytes as fetched, so a doc that changes underneath this sheet can be detected rather than assumed.

More Study Notes (25)

Unit 2 roadmap — Implement and manage storage

AZ-104 › Unit 2

375 words

Unit 2 capstone — A media archive on a budget

AZ-104 › Unit 2 › Capstone

808 words

Cram sheet — Configure access to storage

AZ-104 › Unit 2 › Configure access to storage

520 words

Cram sheet — Configure and manage storage accounts

AZ-104 › Unit 2 › Configure and manage storage accounts

421 words

Cram sheet — Configure Azure Files and Azure Blob Storage

AZ-104 › Unit 2 › Configure Azure Files and Azure Blob Storage

600 words

Lab — A lifecycle rule is a one-way door

AZ-104 › Unit 2 › Lab

180 words

Lab — Issue a signature you can actually revoke

AZ-104 › Unit 2 › Lab

216 words

Unit 3 roadmap — Deploy and manage Azure compute resources

AZ-104 › Unit 3

517 words

Cram sheet — Automate deployment by using ARM templates or Bicep files

AZ-104 › Unit 3 › Automate deployment by using ARM templates or Bicep files

398 words

Unit 3 capstone — Consolidating a mixed compute estate

AZ-104 › Unit 3 › Capstone

763 words

Cram sheet — Create and configure Azure App Service

AZ-104 › Unit 3 › Create and configure Azure App Service

577 words

Cram sheet — Create and configure virtual machines

AZ-104 › Unit 3 › Create and configure virtual machines

466 words

Lab — Watch an omitted property reset itself

AZ-104 › Unit 3 › Lab

186 words

Cram sheet — Provision and manage containers in the Azure portal

AZ-104 › Unit 3 › Provision and manage containers in the Azure portal

429 words

Unit 4 roadmap — Implement and manage virtual networking

AZ-104 › Unit 4

370 words

Unit 4 capstone — A hub-and-spoke that has to actually work

AZ-104 › Unit 4 › Capstone

763 words

Cram sheet — Configure and manage virtual networks in Azure

AZ-104 › Unit 4 › Configure and manage virtual networks in Azure

345 words

Cram sheet — Configure name resolution and load balancing

AZ-104 › Unit 4 › Configure name resolution and load balancing

394 words

Cram sheet — Configure secure access to virtual networks

AZ-104 › Unit 4 › Configure secure access to virtual networks

479 words

Lab — Prove a security group is stateful

AZ-104 › Unit 4 › Lab

190 words

Unit 5 roadmap — Monitor and maintain Azure resources

AZ-104 › Unit 5

389 words

Unit 5 capstone — The week after an incident

AZ-104 › Unit 5 › Capstone

711 words

Cram sheet — Implement backup and recovery

AZ-104 › Unit 5 › Implement backup and recovery

421 words

Lab — Find out what you can and cannot see about yesterday

AZ-104 › Unit 5 › Lab

196 words

Cram sheet — Monitor resources in Azure

AZ-104 › Unit 5 › Monitor resources in Azure

450 words

Ready to practice? Jump straight in — no sign-up needed.

Take practice tests, review flashcards, and read study notes right now.

Take a Practice Test

Microsoft Azure Administrator (AZ-104) Practice Questions

Try 15 sample questions from a bank of 448. Answers and detailed explanations included.

Q1medium

After cancelling a subscription, how long does Microsoft retain the data before permanently deleting it?

A.

72 hours

B.

7 days

C.

30 to 90 days, at no charge during the retention window

D.

Indefinitely until an administrator requests deletion

Show answer & explanation

Correct Answer: C

The documentation states: "We keep your data in case you want to reactivate your subscription or you change your mind. Microsoft waits 30 to 90 days before permanently deleting your data. We don't charge you for retaining the data."

  • A — Incorrect. 72 hours is the final-invoice window, not retention.
  • B — Incorrect. Seven days appears in the delete-option timeline for field/partner channels (7 days), not data retention.
  • C — Correct. The documented 30–90-day window, free of charge.
  • D — Incorrect. Retention is bounded — permanent deletion follows automatically.

Answer: C

Q2medium

Fabrikam must give a reporting partner time-limited read access to one container without sharing the storage account keys. Which shared access signature fits, and why?

A.

A service SAS, because it is scoped to a single service

B.

An account SAS, because it can be scoped down to one container

C.

A user delegation SAS, because it is secured with Microsoft Entra credentials instead of the account key

D.

Any SAS type, because none of them expose the account key

Show answer & explanation

Correct Answer: C

The scenario rules out the account key, and that is precisely what separates the three SAS types.

  • A — Incorrect. A service SAS is secured with the storage account key.
  • B — Incorrect. An account SAS is also secured with the account key.
  • C — Correct. A user delegation SAS is secured with Microsoft Entra credentials, and is the recommended choice.
  • D — Incorrect. Two of the three types are signed with the account key.

Official doc: learn.microsoft.com/en-us/azure/storage/common/storage-sas-overview — “A user delegation SAS is secured with Microsoft Entra credentials instead of the account key, which provides superior security.”

Answer: C

Q3medium

Woodgrove's auditors reject the default Azure route to the internet. Before any custom route is added, what does that default route do?

A.

It drops traffic for any address outside the virtual network's own ranges

B.

It sends traffic for any address not within a virtual network range to the internet

C.

It sends all traffic to the virtual network gateway if one exists

D.

It exists only after a public IP address is attached to a machine in the subnet

Show answer & explanation

Correct Answer: B

Knowing what is being overridden is what makes the override deliberate — the system route is permissive by default, which is exactly the auditors' objection.

  • A — Incorrect. The default is to route out, not to drop.
  • B — Correct. The 0.0.0.0/0 system route sends anything not matched by a virtual network range to the internet.
  • C — Incorrect. A gateway route applies to the gateway's own prefixes, not to everything.
  • D — Incorrect. The system route exists regardless of public IP addresses.

Official doc: learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-udr-overview — “The system default route specifies the 0.0.0.0/0 address prefix.”

Answer: B

Q4easy

A virtual machine uses Azure-provided name resolution. Which IP address does it send its DNS queries to?

A.

169.254.169.254

B.

10.0.0.4, the first usable address of the subnet

C.

The virtual network's first address plus two

D.

168.63.129.16

Show answer & explanation

Correct Answer: D

Azure-provided name resolution is served from a fixed, well-known virtual IP that is the same in every region and every virtual network.

  • A — Incorrect. 169.254.169.254 is the Azure Instance Metadata Service endpoint, not the DNS resolver.
  • B — Incorrect. The first usable subnet address is reserved by Azure for the default gateway, not for DNS.
  • C — Incorrect. There is no per-virtual-network arithmetic involved; the resolver address does not vary.
  • D — Correct. This is the documented static address for Azure-provided DNS.

Official doc: learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-name-resolution-for-vms-and-role-instances — “The Azure DNS IP address is 168.63.129.16. This address is a static IP address and doesn't change.”

Answer: D

Q5medium

A web app lives in rg-web but its database sits in rg-data. Leadership wants both consolidated into a single resource group without redeploying either. What should you do?

A.

Move the resources from one resource group to the other

B.

Delete both groups and redeploy everything into a fresh one

C.

Export ARM templates and reimport — the only supported path

D.

Rename rg-data so both appear unified in listings

Show answer & explanation

Correct Answer: A

Both pages confirm the operation: "You can move resources from one resource group to another" (portal guide), and Resource Manager elaborates: "You can move a resource from one resource group to another group" — noting this is common "when the two resources are related but don't share the same lifecycle."

  • A — Correct. Native move support, no redeployment required.
  • B — Incorrect. Destructive and unnecessary.
  • C — Incorrect. Template export/import is a fallback for unsupported scenarios, not the default.
  • D — Incorrect. Renaming doesn't consolidate membership (and resource groups aren't renamed in place).

Answer: A

Q6medium

A backend pool repeatedly exhausts its SNAT ports because one virtual machine opens far more outbound connections than the others. Which change does Microsoft recommend for most scenarios, and why does it help?

A.

Enable session persistence, so outbound flows reuse one backend consistently

B.

Shorten the outbound idle timeout to 30 seconds, so ports are returned sooner than any workload needs them

C.

Move the backend pool to a Basic Load Balancer, which does not consume SNAT ports

D.

Deploy a NAT gateway, which allocates SNAT ports dynamically across every instance in the subnet instead of fixing an amount per instance

Show answer & explanation

Correct Answer: D

The load balancer's allocation is fixed per instance, so a single busy machine can exhaust its own share while ports sit unused elsewhere. A NAT gateway pools them across the subnet, which is exactly the mismatch this workload has.

  • A — Incorrect. Session persistence governs inbound distribution and does nothing for outbound port pressure.
  • B — Incorrect. Reducing the idle timeout can help at the margin, but 30 seconds is below the minimum the setting allows and is not the recommendation.
  • C — Incorrect. Basic Load Balancer was retired on 30 September 2025, and outbound translation still consumed ports.
  • D — Correct. Dynamic allocation across the subnet is the documented reason a NAT gateway reduces the risk.

Official doc: learn.microsoft.com/en-us/troubleshoot/azure/load-balancer/troubleshoot-outbound-connection — “For most scenarios, Azure recommends using a NAT gateway for outbound connectivity to reduce the risk of SNAT exhaustion.”

Answer: D

Q7medium

You regenerate key1 of sa-reporting. Which outcome follows for outstanding SAS tokens?

A.

All SAS die, regardless of type

B.

Nothing changes until you also rotate key2

C.

Key1-signed account/service SAS are revoked; user delegation SAS survive

D.

Only stored-access-policy SAS are revoked; ad-hoc tokens keep working

Show answer & explanation

Correct Answer: C

Key rotation is surgical by key: rotating or regenerating access keys revokes shared access signatures (SAS) that are generated based on that key — and user delegation SAS tokens are secured with Microsoft Entra credentials and aren't affected by key rotation.

  • A — Incorrect. Overbroad — key2-signed tokens persist, and Entra-secured tokens were never keyed to key1.
  • B — Incorrect. key1's rotation takes immediate effect on its own signatures.
  • C — Correct. Exactly the documented split.
  • D — Incorrect. Revocation tracks signing key, not whether a stored policy participated.

Answer: C

Q8medium

You are adding a virtual network rule that authorizes subnet snet-etl for storage account sa-lake. Besides creating the rule itself, what must exist on snet-etl?

A.

A Virtual Network service endpoint enabled in the subnet's settings

B.

A network security group rule allowing outbound port 445

C.

A user-defined route directing storage traffic to the Microsoft backbone

D.

Registration of the Microsoft.Storage resource provider on the subscription

Show answer & explanation

Correct Answer: A

Authorizing a subnet requires the plumbing, not just the rule: in the subnet's virtual network settings, you must also enable a Virtual Network service endpoint, which provides secure and direct connectivity to the storage account. (The portal creates this endpoint automatically as you select each target subnet.)

  • A — Correct. Documented prerequisite for the virtual network rule to function.
  • B — Incorrect. NSGs filter traffic but are not part of the storage-account authorization model.
  • C — Incorrect. UDRs shape routing decisions; the endpoint itself supplies the direct route.
  • D — Incorrect. Microsoft.Storage is registered by default wherever you can create storage accounts.

Answer: A

Q9medium

Your company requires that new storage accounts can only be created in East US or West US, regardless of which engineer deploys them or which tool they use. Which approach enforces this?

A.

Create a custom Azure RBAC role whose action list omits the disallowed regions' resource providers

B.

Configure network security groups to reject traffic from other regions

C.

Apply a ReadOnly management lock to every existing storage account

D.

Assign the built-in Allowed Locations policy definition with a Deny effect at the subscription scope

Show answer & explanation

Correct Answer: D

Region restrictions are a state constraint — exactly what Azure Policy governs. The built-in Allowed Locations (Deny) definition exists for this purpose: it "restricts the available locations for new resources" and "is used to enforce your geo-compliance requirements."

  • A — Incorrect. Azure RBAC controls actions, not resulting resource properties; there is no RBAC action representing "deploy to region X." The overview notes: "If control of an action is required based on user information, then Azure RBAC is the correct tool to use" — implying state rules are Policy's domain.
  • B — Incorrect. NSGs filter network traffic; they cannot prevent resource creation.
  • C — Incorrect. A ReadOnly lock protects existing resources from modification; it does nothing about new deployments.
  • D — Correct. Assigning Allowed Locations with Deny blocks any creation outside the permitted list, independent of user or tool.

Answer: D

Q10easy

Where can an administrator see alerts, jobs, security and usage for a vault without configuring anything first?

A.

Only after routing the vault's diagnostic logs to a Log Analytics workspace

B.

In the Overview pane of the Recovery Services vault or Backup vault, by default

C.

Only in Azure Monitor workbooks, which must be imported into the subscription

D.

Only through the Azure Backup REST API

Show answer & explanation

Correct Answer: B

The built-in view is there from the start; diagnostic settings and workbooks extend it rather than being a prerequisite for it.

  • A — Incorrect. Export is for longer retention and cross-vault reporting, not for the built-in view.
  • B — Correct. Available by default in the Overview pane.
  • C — Incorrect. Workbooks are optional.
  • D — Incorrect. The portal shows this without any API work.

Official doc: learn.microsoft.com/en-us/azure/backup/backup-azure-monitoring-built-in-monitor — “Overview of alerts, jobs, security and usage are available by default in the Overview pane of Resiliency, Recovery Services Vault and Backup Vault.”

Answer: B

Q11hard

Application owners need contoso.com (the bare domain) to resolve to a load-balanced front door backed by a Standard SKU public IP, and they never want a stale record left behind if that IP is deleted. Which mechanism fits?

A.

A wildcard CNAME record set covering all labels including the apex

B.

A TXT record referencing the public IP resource ID

C.

Lowering the apex SOA TTL so stale entries expire within seconds

D.

An alias A record set at the zone apex pointing to the Standard SKU public IP resource

Show answer & explanation

Correct Answer: D

Alias record sets qualify A, AAAA, or CNAME records and reference Azure resources directly. At the apex — where CNAME cannot exist — an alias A/AAAA set tracks the target resource dynamically: if the IP changes the record follows it, and deleting the resource leaves an empty record set instead of a dangling pointer.

Official doc: learn.microsoft.com/en-us/azure/dns/dns-alias — “Point to a Standard SKU public IP resource from a DNS A/AAAA record set.” and “Unlike CNAME records, alias records are created at the zone apex.”

Answer: D

Q12easy

You want to pilot self-service password reset with a single test group before tenant-wide rollout. Which enablement scopes does the Password reset pane offer in the Microsoft Entra admin center?

A.

None, Selected (one chosen group), or All users.

B.

All users only — pilots require deploying a Conditional Access exclusion instead.

C.

Any number of individually selected groups, subject to licensing.

D.

Selected users only, with a maximum of 500 pilot accounts.

Show answer & explanation

Correct Answer: A

SSPR enablement is a three-way switch: None, Selected, or All. Pilots use Selected — and in the admin center that means exactly one group (nested groups still work, so membership scales).

  • A — Correct. Matches the documented scope options verbatim.
  • B — Incorrect. Gradual rollout is a first-class scenario — that's what Selected is for.
  • C — Incorrect. The admin center accepts only one selected group for SSPR.
  • D — Incorrect. There is no 500-account cap; scope granularity is None/Selected/All.

Answer: A

Q13easy

What is a managed disk snapshot?

A.

An incremental delta chain that keeps the source disk online and required

B.

A read-only, crash-consistent full copy of a managed disk, stored as a standard managed disk by default

C.

A zone-redundant synchronous mirror of the source disk

D.

An ARM template describing the disk configuration without any data

Show answer & explanation

Correct Answer: B

Definition straight from the overview: a snapshot is a read-only, crash-consistent full copy of a managed disk, stored as a standard managed disk by default. Snapshots exist independently of the source disk and can seed new managed disks.

  • A - Incorrect. It is a full copy, not a delta chain.
  • B - Correct. Verbatim definition.
  • C - Incorrect. Mirroring is a redundancy option of live disks, not what a snapshot is.
  • D - Incorrect. A snapshot contains data, unlike a declarative template.

Answer: B

Q14hard

You need a Premium SSD v2 data disk configured for the maximum 80,000 IOPS. What is the minimum disk capacity you can provision to reach that ceiling?

A.

6 GiB

B.

61 GiB

C.

116 GiB

D.

160 GiB

Show answer & explanation

Correct Answer: D

Premium SSD v2 grants every disk a free baseline of 3,000 IOPS; beyond 6 GiB, the maximum grows by 500 IOPS per GiB up to 80,000. Working the arithmetic: (80,000 - 3,000) / 500 = 154 GiB above the 6 GiB floor, i.e. 160 GiB total.

The documentation states it directly: to set 80,000 IOPS on a disk, that disk must have at least 160 GiB.

  • A - Incorrect. 6 GiB is where the scaling begins (baseline 3,000), nowhere near the cap.
  • B - Incorrect. 61 GiB yields roughly 3,000 + 55 x 500 = 30,500 IOPS.
  • C - Incorrect. 116 GiB yields roughly 3,000 + 110 x 500 = 58,000 IOPS.
  • D - Correct. Documented minimum for the 80,000 IOPS cap.

Answer: D

Q15easy

You run az container create without specifying a restart policy. What behavior results?

A.

The container is never restarted automatically

B.

Containers in the group are always restarted - Always is the default policy

C.

The container restarts only after a nonzero exit code

D.

The container runs once and is then deallocated

Show answer & explanation

Correct Answer: B

Omitting the setting selects Always: containers in the container group are always restarted, and this policy is the default applied when none is specified at creation.

  • A - Incorrect. That describes Never.
  • B - Correct. Default policy, verbatim.
  • C - Incorrect. That describes OnFailure.
  • D - Incorrect. Run-once completion requires Never or OnFailure.

Answer: B

These are 15 of 448 questions available. Take a practice test →

Microsoft Azure Administrator (AZ-104) Flashcards

254 flashcards for spaced-repetition study. Showing 30 sample cards below.

Apply and manage tags on resources(2 cards shown)

Question

How many tags can a resource, resource group or subscription carry?

Answer

50 tag name-value pairs, each.

If you need more, store a JSON string as a single tag value.

Question

Where do tags show up when you are analysing a bill?

Answer

In the Tags column of the cost view — for services that support tags with billing.

Assign roles at different scopes(5 cards shown)

Question

What are the four Azure scope levels, broadest to narrowest?

Answer

Management group → subscription → resource group → resource.

Question

How many custom roles can a tenant hold?

Answer

5,000.

Question

What are the three restrictions on a custom role's AssignableScopes?

Answer

  • It cannot be the root scope "/"
  • It cannot use wildcards (*)
  • It can name only one management group

Question

At which scope can a custom role containing DataActions never be assigned?

Answer

Management group scope. Custom roles with DataActions can't be assigned there.

Question

What must you do before a custom role can be deleted?

Answer

Remove every role assignment that uses it.

Otherwise the delete fails with There are existing role assignments referencing role (code: RoleDefinitionHasAssignments).

Configure and interpret backup reports and alerts(2 cards shown)

Question

Where do you find backup alerts, jobs, security and usage without configuring anything?

Answer

In the Overview pane of Resiliency, the Recovery Services vault and the Backup vault — available by default.

Question

What three protections does Azure Files backup give you?

Answer

  • Instant restore — file share snapshots, so you restore just the files you want
  • Soft delete enabled at the storage account level, 14-day retention
  • A lease on snapshots taken by backup jobs, locking them against accidental deletion

Configure an internal or public load balancer(3 cards shown)

Question

At which OSI layer does Azure Load Balancer operate, and what traffic does it distribute?

Answer

Layer 4. Use it to distribute TCP or UDP traffic across VMs or scale sets — it is the single point of contact for clients.

Question

What is Azure Load Balancer's default distribution mode, and what makes up the hash?

Answer

Five-tuple hash — source IP, source port, destination IP, destination port, and protocol type.

Question

How many tuples does each session persistence mode use?

Answer

modetupleseffect
Nonefivesame client IP → any healthy instance
Client IPtwosame client IP → same instance
Client IP and protocolthreesame client IP and protocol → same instance

Configure Azure DNS(4 cards shown)

Question

What must you do to resolve a private DNS zone's records from a virtual network?

Answer

Link the virtual network to the zone.

The zone data is stored as a global resource, so it isn't tied to any one virtual network or region.

Question

Do two virtual networks need to be peered to resolve names across them?

Answer

No. Cross-virtual-network DNS resolution has no explicit dependency on the networks being peered.

Question

How many private DNS zones can a virtual network link to with autoregistration enabled?

Answer

One. A virtual network links to only one zone when autoregistration is on — though many virtual networks can link to a single zone.

Question

What does DNS autoregistration not cover?

Answer

  • Non-VM resources such as internal load balancers — create those records manually
  • Secondary NICs — only the primary NIC gets a record
  • Reverse (PTR) records — not supported at all

Records are removed when the VM is deleted or stopped.

Configure Azure Site Recovery for Azure resources(3 cards shown)

Question

What does Azure Site Recovery do?

Answer

Replicates workloads running on physical and virtual machines from a primary site to a secondary location, keeping business apps running during outages.

Question

What does a recovery plan define, and how many instances can it hold?

Answer

How machines fail over and the sequence in which they start afterwards, by gathering them into recovery groups.

Up to 100 protected instances per plan, usable for both failover to and failback from Azure.

Question

Which network should a test failover use, and why?

Answer

One isolated from the production recovery site network, set per VM in Compute and Network settings — so the drill can't disturb production.

Configure Azure Storage firewalls and virtual networks(3 cards shown)

Question

What network access does a brand-new storage account allow?

Answer

Connections from any network. Storage accounts allow this by default — restricting access is something you turn on.

Question

How many virtual network rules and IP network rules can one storage account hold?

Answer

400 of each — up to 400 virtual network rules and up to 400 IP network rules per storage account.

Question

You enable a service endpoint on a subnet. What happens to the IP rules that used to permit that subnet?

Answer

They stop having any effect.

Traffic from a service-endpoint subnet no longer uses a public IP address to reach the storage account, so an IP rule has nothing left to match.

Configure Azure Storage redundancy(5 cards shown)

Question

What does LRS replicate across, and what durability does it give?

Answer

A single physical datacenter in the primary region — and at least 99.999999999% (11 nines) durability over a year.

Question

What does ZRS copy across, and is the write synchronous?

Answer

Three or more availability zones in the primary region, and yes — synchronously.

A ZRS write returns successfully only after the data is written to all replicas across the three zones.

Question

With plain GRS, can you read the secondary copy?

Answer

No — not unless a failover happens.

For read access to the secondary you need RA-GRS or RA-GZRS. Geo-redundancy and read access are two separate purchases.

Question

What is the only difference between GRS and GZRS?

Answer

How the data is replicated in the primary region — LRS for GRS, ZRS for GZRS.

In the secondary region both are identical: always replicated synchronously using LRS.

Question

Which redundancy option does Azure Files not support?

Answer

RA-GRS and RA-GZRS — the read-access variants.

Configure backup for an App Service(3 cards shown)

Question

Which tiers support App Service backup, and what is special about Basic?

Answer

Basic, Standard, Premium and Isolated.

On Basic you can only back up and restore the production slot.

Question

What is the maximum size of a custom App Service backup?

Answer

10 GB, of which at most 4 GB can be the linked database.

Exceed 10 GB of content and the backup fails — that is the maximum you can back up at a time.

Question

How often can custom backups run, and what constrains a restore target?

Answer

Every 2 hours minimum, up to 12 backups per day (manual plus scheduled).

Backups restore only to a target app on the same OS platform as the source.

Showing 30 of 254 flashcards. Study all flashcards →

Ready to ace Microsoft Azure Administrator (AZ-104)?

Access all 448 practice questions, study notes, and flashcards — no sign-up required.

Start Studying — Free