nerdexam
Microsoft

AZ-305 · Question #12

Case Study 3 - Contoso Existing Environment: Technical Environment The on-premises network contains a single Active Directory domain named contoso.com. Contoso has a single Azure subscription…

Hotspot Explanation: App1 Access to Azure Key Vault Correct Answers: 1. A system-assigned managed identity 2. A role assignment --- Dropdown 1: Authenticate App1 by using -> A system-assigned managed identity Why system-assigned managed identity is correct: The key security…

Submitted by wei.xz· Mar 6, 2026Design identity, governance, and monitoring solutions

Question

Case Study 3 - Contoso Existing Environment: Technical Environment The on-premises network contains a single Active Directory domain named contoso.com. Contoso has a single Azure subscription. Existing Environment: Business Partnerships Contoso has a business partnership with Fabrikam, Inc. Fabrikam users access some Contoso applications over the internet by using Azure Active Directory (Azure AD) guest accounts. Requirements: Planned Changes Contoso plans to deploy two applications named App1 and App2 to Azure. Requirements: App1 App1 will be a Python web app hosted in Azure App Service that requires a Linux runtime. Users from Contoso and Fabrikam will access App1. App1 will access several services that require third-party credentials and access strings. The credentials and access strings are stored in Azure Key Vault. App1 will have six instances: three in the East US Azure region and three in the West Europe Azure region. App1 has the following data requirements: Each instance will write data to a data store in the same availability zone as the instance. Data written by any App1 instance must be visible to all App1 instances. App1 will only be accessible from the internet. App1 has the following connection requirements: Connections to App1 must pass through a web application firewall (WAF). Connections to App1 must be active-active load balanced between instances. All connections to App1 from North America must be directed to the East US region. All other connections must be directed to the West Europe region. Every hour, you will run a maintenance task by invoking a PowerShell script that copies files from all the App1 instances. The PowerShell script will run from a central location. Requirements: App2 App2 will be a NET app hosted in App Service that requires a Windows runtime. App2 has the following file storage requirements: Save files to an Azure Storage account. Replicate files to an on-premises location. Ensure that on-premises clients can read the files over the LAN by using the SMB protocol. You need to monitor App2 to analyze how long it takes to perform different transactions within the application. The solution must not require changes to the application code. Application Development Requirements Application developers will constantly develop new versions of App1 and App2. The development process must meet the following requirements: A staging instance of a new application version must be deployed to the application host before the new version is used in production. After testing the new version, the staging version of the application will replace the production version. The switch to the new application version from staging to production must occur without any downtime of the application. Identity Requirements Contoso identifies the following requirements for managing Fabrikam access to resources: Every month, an account manager at Fabrikam must review which Fabrikam users have access permissions to App1. Accounts that no longer need permissions must be removed as guests. The solution must minimize development effort. Security Requirement All secrets used by Azure services must be stored in Azure Key Vault. Services that require credentials must have the credentials tied to the service instance. The credentials must NOT be shared between services. Hotspot Question You need to recommend a solution to ensure that App1 can access the third-party credentials and access strings. The solution must meet the security requirements. What should you include in the recommendation? To answer, select the appropriate options in the answer area. NOTE: Each correct selection is worth one point. Answer:

Exhibits

AZ-305 question #12 exhibit 1
AZ-305 question #12 exhibit 2

Answer Area

  • Authenticate App1 by using:
    A certificateA service principalA system-assigned managed identityA user-assigned managed identity
  • Authorize App1 to retrieve Key Vault secrets by using:
    An access policyA connected serviceA private linkA role assignment

Explanation

Hotspot Explanation: App1 Access to Azure Key Vault

Correct Answers:

  1. A system-assigned managed identity
  2. A role assignment

Dropdown 1: Authenticate App1 by using -> A system-assigned managed identity

Why system-assigned managed identity is correct:

The key security requirement is: "credentials must be tied to the service instance" and "credentials must NOT be shared between services."

A system-assigned managed identity is automatically created and bound to the lifecycle of one specific App Service instance. When the instance is deleted, the identity is deleted. This satisfies both constraints - the identity is instance-specific and cannot be reused by another service.

Why the others are wrong:

OptionWhy Wrong
A certificateCertificates are credentials you manage manually. They can be exported and shared - violating the "not shared" rule.
A service principalA service principal's client secret or certificate can be copied and shared across services. It's not tied to a specific instance.
A user-assigned managed identityExplicitly designed to be shared across multiple services. This directly violates the "must NOT be shared between services" requirement.

Dropdown 2: Authorize App1 to retrieve Key Vault secrets by using -> A role assignment

Why a role assignment is correct:

This refers to Azure RBAC (Role-Based Access Control). You assign the managed identity a built-in role such as Key Vault Secrets User on the Key Vault resource. This is Microsoft's current recommended authorization model for Key Vault - it integrates with Azure's unified RBAC plane and provides fine-grained, auditable access control.

Why the others are wrong:

OptionWhy Wrong
An access policyThis is the legacy Key Vault authorization model. Still functional, but Microsoft recommends RBAC (role assignments) going forward. Exam questions targeting modern best practices favor role assignments.
A connected serviceA Visual Studio IDE feature that adds SDK references and config. It is a development-time tool, not a runtime authorization mechanism.
A private linkA network feature that routes traffic to Key Vault privately over a VNet. It controls connectivity, not identity-based authorization.

Key Concept Summary

Managed Identity + RBAC Role Assignment is the standard, secretless pattern for Azure service-to-service authorization. No credentials to rotate, no risk of secret leakage, and access is scoped and auditable per-instance.

Topics

#Azure Key Vault#Managed Identities#Application Security#Azure App Service

Community Discussion

No community discussion yet for this question.

Full AZ-305 Practice