Courseiva
Question 118 of 1,049
Deploy and Manage Azure ComputemediumMultiple ChoiceObjective-mapped

Custom Script Extension to Run PowerShell After VM Deployment

You need to run a PowerShell script inside a newly deployed Azure virtual machine to configure application settings immediately after deployment. Which feature should you use?

Quick Answer

The answer is the Custom Script Extension (CSE), which is the correct choice because it allows you to run a PowerShell script inside a newly deployed Azure virtual machine to configure application settings immediately after deployment. CSE works by leveraging the Azure VM agent to download and execute your script on the VM, making it ideal for post-deployment configuration tasks like installing software or adjusting registry keys. On the AZ-104 exam, this scenario tests your understanding of VM extensions and the distinction between CSE and other tools like Desired State Configuration (DSC) or Run Command—a common trap is confusing CSE with DSC, but remember that CSE runs a one-time script, whereas DSC manages ongoing state. For a quick memory tip, think of CSE as the “setup helper” that runs your script right after the VM boots, perfect for that initial application configuration.

⚠ Common exam trap

Watch out — candidates often confuse Azure Policy (which governs resource configuration at the Azure control plane) with the Custom Script Extension (which operates inside the guest OS), leading them to incorrectly select Azure Policy for post-deployment script execution.

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

A Custom Script Extension

The Custom Script Extension (CSE) is the correct choice because it allows you to run a PowerShell script on an Azure VM after deployment, making it ideal for configuring application settings. CSE downloads and executes scripts on the VM using the Azure VM agent, and it can be invoked during VM creation or post-deployment via ARM templates, Azure CLI, or PowerShell.

Answer analysis

Option-by-option breakdown

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

  • Azure Policy

    Why it's wrong here

    Azure Policy enforces governance rules but does not run guest OS scripts.

    When this WOULD be correct

    You need to ensure that all VMs in a subscription have a specific tag applied automatically. Azure Policy with a 'deny' or 'modify' effect would be correct to enforce tagging rules during or after deployment.

  • A Custom Script Extension

    Why this is correct

    A Custom Script Extension runs scripts inside the virtual machine.

  • Boot diagnostics

    Why it's wrong here

    Boot diagnostics is used for troubleshooting and does not execute scripts.

    When this WOULD be correct

    You need to troubleshoot why an Azure VM is not booting properly and want to view the console logs or screenshot to diagnose the issue.

  • An availability set

    Why it's wrong here

    An availability set provides resiliency and does not configure the guest OS.

    When this WOULD be correct

    You need to ensure that at least two VMs hosting a critical application are not affected by the same hardware failure or maintenance event. In this scenario, deploying the VMs in an availability set would be the correct answer.

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.

A Custom Script ExtensionCorrect answer

Why this is correct

A Custom Script Extension runs scripts inside the virtual machine.

Azure PolicyWrong answer — click to see why

Why this is wrong here

Azure Policy enforces compliance rules on resources but cannot execute scripts inside a VM after deployment; it only audits or applies configurations at the resource level.

★ When this WOULD be the correct answer

You need to ensure that all VMs in a subscription have a specific tag applied automatically. Azure Policy with a 'deny' or 'modify' effect would be correct to enforce tagging rules during or after deployment.

Why candidates choose this

Candidates may confuse Azure Policy's ability to apply configurations (like guest configuration) with running arbitrary scripts, or think policy can trigger script execution.

Boot diagnosticsWrong answer — click to see why

Why this is wrong here

Boot diagnostics captures serial console output and screenshots for troubleshooting boot failures, but it does not execute scripts or configure applications inside the VM after deployment.

★ When this WOULD be the correct answer

You need to troubleshoot why an Azure VM is not booting properly and want to view the console logs or screenshot to diagnose the issue.

Why candidates choose this

Candidates may confuse boot diagnostics with post-deployment configuration tools, thinking it can run scripts or apply settings during boot.

An availability setWrong answer — click to see why

Why this is wrong here

An availability set is used to ensure high availability of VMs by distributing them across fault and update domains, not for running scripts after deployment.

★ When this WOULD be the correct answer

You need to ensure that at least two VMs hosting a critical application are not affected by the same hardware failure or maintenance event. In this scenario, deploying the VMs in an availability set would be the correct answer.

Why candidates choose this

Candidates may confuse availability sets with deployment automation or post-deployment configuration tasks, thinking they provide a way to manage application settings across multiple VMs.

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?”

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 way 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. You need to run a scheduled script on an Azure virtual machine every time the VM starts. Which feature should you use?

medium
  • A.Boot diagnostics
  • B.A Custom Script Extension
  • C.Azure Policy
  • D.An availability set

Why B: To run a script every time an Azure VM starts, use the Custom Script Extension to deploy a script that creates a scheduled task configured to run at system startup. The Custom Script Extension itself executes only during provisioning or when manually invoked; it does not rerun automatically on each boot. Therefore, B is correct because it is the only option that allows executing custom code, and you can use it to set up the startup trigger.

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.