Question 171 of 1,170
Implement and Manage StoragemediumMultiple ChoiceObjective-mapped

Using Managed Identity to Access Blob Storage from an Azure VM

This AZ-104 practice question tests your understanding of implement and manage storage. This is a configuration task: choose the command set that satisfies every stated requirement. Small differences — like 'secret' vs 'password' or 'transport input ssh' vs 'all' — change whether the answer is correct. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

A VM-based app must upload invoices to a blob container every hour. Security prohibits storing account keys or SAS tokens on the VM. The app should authenticate with Microsoft Entra ID and be allowed only to write blobs in one container. What should you configure?

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Enable a managed identity on the VM and assign Storage Blob Data Contributor at the container scope.

Option B is correct because enabling a managed identity on the VM allows the app to authenticate with Microsoft Entra ID without storing any secrets. Assigning the Storage Blob Data Contributor role at the container scope grants the VM’s managed identity the minimum required permission to write blobs only to that specific container, adhering to the principle of least privilege.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Create an account SAS token and store it in the VM's application settings.

    Why it's wrong here

    An account SAS relies on a shared secret and violates the requirement to avoid storing keys or long-lived tokens on the VM.

    When this WOULD be correct

    If the security requirement did not prohibit storing SAS tokens on the VM, and the app needed to access a specific container with write-only permissions, an account SAS token scoped to that container would be a valid solution.

  • Enable a managed identity on the VM and assign Storage Blob Data Contributor at the container scope.

    Why this is correct

    A managed identity lets the VM authenticate to Azure Storage through Microsoft Entra ID without storing credentials on the server. Assigning Storage Blob Data Contributor at the container scope gives the app the ability to upload and modify blob data only where needed. This is the least-privilege approach and aligns with secure operational practice for Azure administrators.

    Related concept

    Read the scenario before looking for a memorised answer.

  • Assign Reader on the storage account so the VM can reach the container securely.

    Why it's wrong here

    Reader is a management-plane role and does not grant permission to upload blob data. It cannot satisfy the write requirement.

    When this WOULD be correct

    If the requirement was to allow a user or application to list or read blobs in a container (e.g., for auditing or reporting) without write permissions, assigning Reader at the storage account scope would be correct.

  • Grant Storage Account Contributor at the subscription scope so the app can manage all storage resources.

    Why it's wrong here

    Storage Account Contributor is far broader than needed and grants management-plane control, not just blob data access. It also violates least privilege.

    When this WOULD be correct

    This option would be correct if the question required a user or application to have full administrative control over a specific storage account (e.g., to create, delete, or configure storage resources) and the scope was limited to that storage account rather than the entire subscription.

Option-by-option analysis

Why each answer is right or wrong

Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The AZ-104 exam frequently reuses these exact scenarios with slightly different constraints.

Enable a managed identity on the VM and assign Storage Blob Data Contributor at the container scope.Correct answer

Why this is correct

A managed identity lets the VM authenticate to Azure Storage through Microsoft Entra ID without storing credentials on the server. Assigning Storage Blob Data Contributor at the container scope gives the app the ability to upload and modify blob data only where needed. This is the least-privilege approach and aligns with secure operational practice for Azure administrators.

Create an account SAS token and store it in the VM's application settings.Wrong answer — click to see why

Why this is wrong here

Storing an account SAS token on the VM violates the security requirement that prohibits storing account keys or SAS tokens on the VM. The question explicitly forbids this approach.

★ When this WOULD be the correct answer

If the security requirement did not prohibit storing SAS tokens on the VM, and the app needed to access a specific container with write-only permissions, an account SAS token scoped to that container would be a valid solution.

Why candidates choose this

Candidates may think a SAS token is a secure way to grant limited access without keys, and overlook the explicit prohibition in the question against storing tokens on the VM.

Assign Reader on the storage account so the VM can reach the container securely.Wrong answer — click to see why

Why this is wrong here

The Reader role only allows read access to the storage account, not write access to a blob container. The app needs to upload invoices (write blobs), so Reader is insufficient.

★ When this WOULD be the correct answer

If the requirement was to allow a user or application to list or read blobs in a container (e.g., for auditing or reporting) without write permissions, assigning Reader at the storage account scope would be correct.

Why candidates choose this

Candidates may think Reader provides enough access for the app to reach the container, confusing read access with the ability to write blobs, or they may underestimate the need for a specific write role.

Grant Storage Account Contributor at the subscription scope so the app can manage all storage resources.Wrong answer — click to see why

Why this is wrong here

Storage Account Contributor at subscription scope grants full management access to all storage accounts in the subscription, far exceeding the principle of least privilege required for the app to only write blobs in one container. It also does not restrict the app to blob write operations only.

★ When this WOULD be the correct answer

This option would be correct if the question required a user or application to have full administrative control over a specific storage account (e.g., to create, delete, or configure storage resources) and the scope was limited to that storage account rather than the entire subscription.

Why candidates choose this

Candidates may think that granting a high-level contributor role is a simple way to ensure the app has the necessary permissions, without understanding the security implications of over-privileging or the need for scoped access.

Analysis generated from the official AZ-104blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”

Common exam traps

Common exam trap: answer the scenario, not the keyword

The trap here is that candidates often confuse the Reader role (which only allows read access to the storage account's control plane) with the ability to write data, or they incorrectly assume that a broad role like Storage Account Contributor is acceptable because it 'covers' the storage account, ignoring the security constraint and the need for data-plane permissions at the container scope.

Detailed technical explanation

How to think about this question

Managed identities use Azure Instance Metadata Service (IMDS) to obtain an access token from Microsoft Entra ID, which the app then uses to authenticate against Azure Storage via OAuth 2.0. The Storage Blob Data Contributor role includes the 'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write' action, which when scoped to a container, ensures the identity can only write blobs to that specific container. This approach eliminates the need for any shared secrets and supports automatic credential rotation.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Related practice questions

Related AZ-104 practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free AZ-104 practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this AZ-104 question test?

Implement and Manage Storage — This question tests Implement and Manage Storage — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: Enable a managed identity on the VM and assign Storage Blob Data Contributor at the container scope. — Option B is correct because enabling a managed identity on the VM allows the app to authenticate with Microsoft Entra ID without storing any secrets. Assigning the Storage Blob Data Contributor role at the container scope grants the VM’s managed identity the minimum required permission to write blobs only to that specific container, adhering to the principle of least privilege.

What should I do if I get this AZ-104 question wrong?

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more ways this is tested on AZ-104

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A team runs a Windows service on an Azure virtual machine that uploads invoices to Blob storage every few minutes. Security policy forbids storing account keys or long-lived SAS tokens on the VM. The service must authenticate without human interaction. What should the administrator configure?

medium
  • A.Generate a SAS token with a 1-year expiry and store it in an encrypted file on the VM.
  • B.Assign the VM a managed identity and grant it Storage Blob Data Contributor on the container or storage account.
  • C.Share the storage account access key with the service account and rotate it monthly.
  • D.Create a storage firewall rule that allows the VM's public IP address and keep using anonymous access.

Why B: Option B is correct because assigning a managed identity to the VM allows it to authenticate to Azure Blob Storage without any secrets stored on the VM. The managed identity provides an automatically managed service principal in Azure AD, and by granting the Storage Blob Data Contributor role, the service obtains the necessary permissions to upload invoices. This satisfies the security policy forbidding account keys or long-lived SAS tokens and enables unattended authentication.

Keep practising

More AZ-104 practice questions

Last reviewed: Jun 11, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This AZ-104 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-104 exam.