This page contains Windows bias

About This Page

This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.

Bias Analysis

Bias Types:
⚠️ powershell_heavy
⚠️ windows_first
⚠️ missing_linux_example
⚠️ windows_tools
Summary:
The documentation page demonstrates a strong Windows and PowerShell bias. All command-line examples for creating and managing the Key Vault and deploying templates use Azure PowerShell, with no equivalent Azure CLI (Bash) or Linux-native examples. The sample ARM template is for a Windows VM, and the deployment validation steps focus on RDP (Windows Remote Desktop Protocol) access. While Cloud Shell is mentioned as supporting both PowerShell and Bash, only PowerShell scripts are provided, and there is no guidance for Linux VM scenarios or SSH access. Windows tools and patterns (e.g., RDP, PowerShell) are mentioned exclusively or before any Linux alternatives.
Recommendations:
  • Provide equivalent Azure CLI (az) command examples for all PowerShell scripts, especially for key vault creation, secret management, and template deployment.
  • Include a Linux VM example alongside the Windows VM example, with instructions for using SSH keys and connecting via SSH.
  • When describing Cloud Shell, show both PowerShell and Bash workflows, and clarify which commands work in each environment.
  • For deployment validation, add steps for connecting to a Linux VM using SSH, not just RDP for Windows.
  • Mention and link to Linux password requirements and documentation, not just Windows VM password requirements.
  • Balance the order of presentation so that Linux and Windows tools/examples are given equal prominence, or alternate which comes first.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-08-17 00:01 #83 in_progress ✅ Clean
2025-07-13 21:37 #48 completed ❌ Biased

Flagged Code Snippets

When you copy and paste the ID, it might be broken into multiple lines. Merge the lines and trim the extra spaces. To validate the deployment, run the following PowerShell command in the same shell pane to retrieve the secret in clear text. The command works only in the same shell session, because it uses the variable `$keyVaultName`, which is defined in the preceding PowerShell script.
1. Select **Open** to open the file. The scenario is the same as the one that's used in [Tutorial: Create ARM templates with dependent resources](./template-tutorial-create-templates-with-dependent-resources.md). The template defines six resources: * [**Microsoft.Storage/storageAccounts**](/azure/templates/Microsoft.Storage/storageAccounts). * [**Microsoft.Network/publicIPAddresses**](/azure/templates/microsoft.network/publicipaddresses). * [**Microsoft.Network/networkSecurityGroups**](/azure/templates/microsoft.network/networksecuritygroups). * [**Microsoft.Network/virtualNetworks**](/azure/templates/microsoft.network/virtualnetworks). * [**Microsoft.Network/networkInterfaces**](/azure/templates/microsoft.network/networkinterfaces). * [**Microsoft.Compute/virtualMachines**](/azure/templates/microsoft.compute/virtualmachines). It's helpful to have some basic understanding of the template before you customize it. 1. Select **File** > **Save As**, and then save a copy of the file to your local computer with the name *azuredeploy.json*. 1. Repeat steps 1-3 to open the following URL, and then save the file as *azuredeploy.parameters.json*.
Now you've prepared a key vault and a secret. The following sections show you how to customize an existing template to retrieve the secret during the deployment. ## Open a quickstart template Azure Quickstart Templates is a repository for ARM templates. Instead of creating a template from scratch, you can find a sample template and customize it. The template that's used in this tutorial is called [Deploy a simple Windows VM](https://azure.microsoft.com/resources/templates/vm-simple-windows/). 1. In Visual Studio Code, select **File** > **Open File**. 1. In the **File name** box, paste the following URL: