- A
Enable a system-assigned managed identity on the VM.
A system-assigned managed identity gives the VM an Azure identity without storing secrets on the server. It can authenticate to Azure Storage through Microsoft Entra ID.
- B
Assign the Storage Blob Data Contributor role to that identity on the storage account or container.
This role grants the data-plane permissions needed to upload blobs. Assigning it at the storage account or container scope follows least privilege while still allowing writes.
- C
Copy the storage account access key into a configuration file on the VM.
Why wrong: An access key is a long-lived secret and violates the requirement not to store credentials on the VM. It also creates unnecessary exposure if the VM is compromised.
- D
Assign the Reader role at the resource group scope to the VM identity.
Why wrong: Reader only permits viewing Azure resources in the management plane. It does not allow the VM to upload blob data to the storage account.
- E
Create a shared access signature that never expires and place it on the VM.
Why wrong: A never-expiring SAS token is effectively a stored secret and does not meet the security requirement. SAS should be time-limited and tightly scoped.
Quick Answer
The answer is to enable a system-assigned managed identity on the VM and assign it the Storage Blob Data Contributor role on the storage account or container. This works because the managed identity provides the VM with an Azure AD identity, allowing it to authenticate directly to Azure without ever storing a key or SAS token on the disk. The Storage Blob Data Contributor role grants the identity the necessary permissions to upload blobs, satisfying the security policy that forbids long-lived credentials. On the AZ-104 exam, this scenario tests your understanding of managed identity for blob storage upload as a secure, credential-free alternative to access keys—a common trap is choosing a SAS token or key vault reference, which still involves storing or rotating secrets. Remember the mnemonic: “Managed ID, no key to hide—just assign the role and let Azure decide.”
AZ-104 Implement and Manage Storage Practice Question
This AZ-104 practice question tests your understanding of implement and manage storage. Match the stated requirement to the specific cloud service, access model, or configuration option — many options are valid in isolation but not for this scenario. 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 Windows VM in Azure must upload log files to a blob container every hour. Security policy forbids storing the storage account key or any long-lived SAS token on the VM. Which two actions should the administrator take? Select two.
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 system-assigned managed identity on the VM.
A system-assigned managed identity on the VM allows it to authenticate to Azure AD without storing any credentials. By assigning the Storage Blob Data Contributor role to that identity on the storage account or container, the VM can upload logs using Azure AD authentication, which satisfies the security policy forbidding storage account keys or long-lived SAS tokens.
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.
- ✓
Enable a system-assigned managed identity on the VM.
Why this is correct
A system-assigned managed identity gives the VM an Azure identity without storing secrets on the server. It can authenticate to Azure Storage through Microsoft Entra ID.
Related concept
Read the scenario before looking for a memorised answer.
- ✓
Assign the Storage Blob Data Contributor role to that identity on the storage account or container.
Why this is correct
This role grants the data-plane permissions needed to upload blobs. Assigning it at the storage account or container scope follows least privilege while still allowing writes.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Copy the storage account access key into a configuration file on the VM.
Why it's wrong here
An access key is a long-lived secret and violates the requirement not to store credentials on the VM. It also creates unnecessary exposure if the VM is compromised.
- ✗
Assign the Reader role at the resource group scope to the VM identity.
Why it's wrong here
Reader only permits viewing Azure resources in the management plane. It does not allow the VM to upload blob data to the storage account.
- ✗
Create a shared access signature that never expires and place it on the VM.
Why it's wrong here
A never-expiring SAS token is effectively a stored secret and does not meet the security requirement. SAS should be time-limited and tightly scoped.
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 grants control plane read access) with data plane roles like Storage Blob Data Contributor, or mistakenly think a non-expiring SAS is acceptable despite the explicit security policy forbidding long-lived credentials.
Detailed technical explanation
How to think about this question
Managed identities use Azure Instance Metadata Service (IMDS) to obtain tokens for Azure AD authentication, with tokens valid for up to 24 hours and automatically refreshed. The Storage Blob Data Contributor role grants data plane permissions (e.g., Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write) at the storage account or container scope, enabling the VM to upload logs without any key or SAS. In a real-world scenario, this approach also supports auditing via Azure AD sign-in logs, which is critical for compliance.
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.
- →
Implement and Manage Storage — study guide chapter
Learn the concepts, then practise the questions
- →
Implement and Manage Storage practice questions
Targeted practice on this topic area only
- →
All AZ-104 questions
1,170 questions across all exam domains
- →
AZ-104 study guide
Full concept coverage aligned to exam objectives
- →
AZ-104 practice test guide
How to use practice tests most effectively before exam day
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.
Manage Azure Identities and Governance practice questions
Practise AZ-104 questions linked to Manage Azure Identities and Governance.
Implement and Manage Storage practice questions
Practise AZ-104 questions linked to Implement and Manage Storage.
Deploy and Manage Azure Compute practice questions
Practise AZ-104 questions linked to Deploy and Manage Azure Compute.
Implement and Manage Virtual Networking practice questions
Practise AZ-104 questions linked to Implement and Manage Virtual Networking.
Monitor and Maintain Azure Resources practice questions
Practise AZ-104 questions linked to Monitor and Maintain Azure Resources.
AZ-104 Azure RBAC practice questions
Practise AZ-104 questions linked to AZ-104 Azure RBAC.
AZ-104 storage account practice questions
Practise AZ-104 questions linked to AZ-104 storage account.
AZ-104 virtual network practice questions
Practise AZ-104 questions linked to AZ-104 virtual network.
AZ-104 NSG practice questions
Practise AZ-104 questions linked to AZ-104 NSG.
AZ-104 Azure Monitor practice questions
Practise AZ-104 questions linked to AZ-104 Azure Monitor.
AZ-104 backup practice questions
Practise AZ-104 questions linked to AZ-104 backup.
AZ-104 managed identity practice questions
Practise AZ-104 questions linked to AZ-104 managed identity.
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 system-assigned managed identity on the VM. — A system-assigned managed identity on the VM allows it to authenticate to Azure AD without storing any credentials. By assigning the Storage Blob Data Contributor role to that identity on the storage account or container, the VM can upload logs using Azure AD authentication, which satisfies the security policy forbidding storage account keys or long-lived SAS tokens.
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 →
Same concept, more angles
6 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 web app running in Azure App Service must upload files to a blob container. The team wants to avoid storing any secrets in application settings and wants the app to authenticate without a password or access key. What should the administrator configure?
medium- A.Store the storage account key in the app configuration and use it from the application
- ✓ B.Enable a system-assigned managed identity for the app and grant it a storage data role
- C.Create an anonymous public container so the app can upload without authentication
- D.Use a shared access signature generated from the storage account root key
Why B: Option B is correct because a system-assigned managed identity allows the App Service to authenticate to Azure Storage without storing any secrets. By granting the identity the 'Storage Blob Data Contributor' role via Azure RBAC, the app can upload files using Azure AD authentication, eliminating the need for passwords or access keys.
Variation 2. A web app running in Azure App Service must upload images to a blob container without storing any account keys, passwords, or connection strings in configuration. The app uses only one Azure resource. What should the administrator configure?
medium- ✓ A.A system-assigned managed identity on the App Service and an Azure RBAC role on the storage account.
- B.The storage account key, because it is the simplest way to authenticate an application securely.
- C.A shared access signature embedded in the app settings, because SAS is the same as managed identity.
- D.An anonymous public container with write access disabled on the account.
Why A: A system-assigned managed identity allows the App Service to authenticate to Azure Storage without storing any credentials in configuration. By assigning the RBAC role (e.g., Storage Blob Data Contributor) to that identity, the app can securely upload images using Azure AD authentication, meeting the requirement of no account keys, passwords, or connection strings.
Variation 3. A Python app running on an Azure VM must upload blobs to one container in a storage account. The app must not store a storage account key or SAS token on the VM. Which two actions should the administrator take? Select two.
easy- ✓ A.Enable a system-assigned managed identity on the VM.
- ✓ B.Assign the Storage Blob Data Contributor role to that managed identity at the container scope.
- C.Store the storage account access key in an environment variable on the VM.
- D.Generate a service SAS and copy it into the application configuration.
- E.Assign the Contributor role on the resource group to the managed identity.
Why A: A system-assigned managed identity on the VM allows Azure AD authentication without storing any credentials on the VM. By assigning the Storage Blob Data Contributor role to that identity at the container scope, the app can use Azure AD tokens to authenticate and upload blobs, eliminating the need for a storage account key or SAS token.
Variation 4. A team runs a Windows VM in Azure that uploads invoices to a blob container. Security policy forbids storing storage account keys or long-lived SAS tokens on the VM. The app must keep working until the VM is deleted, and access should disappear automatically when the VM is removed. What should the administrator configure?
medium- ✓ A.Assign the VM's managed identity the Storage Blob Data Contributor role on the storage account or container.
- B.Create an account SAS token with write permissions and store it in a secure file on the VM.
- C.Assign the Reader role on the storage account to the VM's computer account.
- D.Enable shared key access and rotate the storage account keys regularly.
Why A: Option A is correct because assigning the VM's managed identity the Storage Blob Data Contributor role on the storage account or container allows the VM to authenticate to Azure Blob Storage without storing any keys or tokens. Managed identities provide an automatically managed service principal in Azure AD, and the application can use the Azure Instance Metadata Service (IMDS) to obtain an access token. When the VM is deleted, the managed identity is automatically removed, and the role assignment becomes invalid, so access disappears immediately.
Variation 5. A web app running in Azure App Service must read blobs from a storage account. The app must authenticate without storing secrets or SAS tokens, and administrators should grant only blob data permissions, not storage management permissions. What should you configure?
medium- A.The storage account access key in an application setting, because it works with any blob operation.
- ✓ B.A system-assigned managed identity for the app with Storage Blob Data Reader assigned at the storage scope.
- C.The Contributor role on the storage account, because it includes both management and data permissions.
- D.A service endpoint on the subnet, because service endpoints are used for application authentication.
Why B: Option B is correct because a system-assigned managed identity allows the App Service to authenticate to Azure Storage without storing any secrets or SAS tokens. By assigning the Storage Blob Data Reader role at the storage account scope, you grant only the necessary blob read permissions while explicitly excluding any storage management permissions (e.g., creating or deleting storage accounts). This aligns with the principle of least privilege and eliminates credential management overhead.
Variation 6. A web API running in an Azure App Service needs to read and write blobs in a storage account. The operations team does not want to store secrets in app settings or rotate credentials manually. What should they enable on the App Service?
medium- A.A storage account access key stored in Key Vault
- ✓ B.A system-assigned managed identity
- C.A shared access signature embedded in the application settings
- D.A service endpoint on the App Service integration subnet
Why B: A system-assigned managed identity allows the App Service to authenticate to Azure Storage without storing any secrets. The identity is automatically managed by Azure AD, and the App Service can use it to obtain an OAuth 2.0 token for accessing blob storage via RBAC. This eliminates the need for manual credential rotation and secret storage.
Keep practising
More AZ-104 practice questions
- A storage automation service principal must upload, read, and delete blob data in one container by using Microsoft Entra…
- A subnet contains several application servers. You need to allow inbound TCP 3389 only from a management subnet named Su…
- A subscription admin wants to investigate who changed a resource and also review the platform-generated events for that…
- Based on the exhibit, which Azure feature should the administrator use to track this kind of platform-wide service issue…
- An administrator wants a script running on an Azure VM to create a resource in Azure without storing any passwords or cl…
- A PowerShell script runs on an Azure VM every night and uses Azure CLI commands to create tags and VM resources in anoth…
Last reviewed: Jun 11, 2026
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.
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.
Sign in to join the discussion.