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
⚠️ windows_tools
Summary:
The documentation provides examples for REST, Azure PowerShell, and Azure CLI when creating Azure subscriptions for Enterprise Agreement (EA) accounts. PowerShell examples are given equal prominence to Azure CLI, but there is a slight Windows bias: PowerShell is highlighted as a primary scripting interface, and the instructions for PowerShell specifically mention using Azure Cloud Shell with PowerShell, which is more familiar to Windows users. The documentation does not mention Linux shells or scripting environments, nor does it provide Bash-specific guidance or note cross-platform compatibility for PowerShell. There are no explicit Linux/Bash examples or notes on how to run PowerShell commands on Linux/macOS, and the PowerShell sections assume familiarity with Windows tooling. However, Azure CLI examples are included, which are cross-platform, partially mitigating the bias.
Recommendations:
  • Explicitly state that Azure PowerShell is cross-platform and can be used on Linux/macOS as well as Windows.
  • Add Bash shell examples or notes for users running Azure CLI in Bash environments, especially for common scripting scenarios.
  • In PowerShell sections, mention how to install and use Azure PowerShell on Linux/macOS, or link to cross-platform installation guides.
  • Avoid language that assumes the user is on Windows (e.g., referencing PowerShell as the default shell or omitting Bash).
  • Where Cloud Shell is referenced, clarify that both Bash and PowerShell environments are available and supported.
  • Consider providing parity in troubleshooting or environment setup instructions for both Windows and Linux users.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-07-12 23:44 #41 in_progress ❌ Biased
2025-07-12 00:58 #8 cancelled ✅ Clean
2025-07-10 05:06 #7 processing ✅ Clean

Flagged Code Snippets

Use the `principalName` property to identify the account that you want subscriptions to be billed to. Copy the `name` of that account. For example, to create subscriptions under the SignUpEngineering@contoso.com enrollment account, copy
| Element Name | Required | Type | Description | |---------------|----------|--------|----| | `Name` | No | String | The display name of the subscription. If not specified, it's set to the name of the offer, like *Microsoft Azure Enterprise*. | | `OfferType` | Yes | String | The subscription offer. The two options for EA are [MS-AZR-0017P](https://azure.microsoft.com/pricing/enterprise-agreement/) (production use) and [MS-AZR-0148P](https://azure.microsoft.com/offers/ms-azr-0148p/) (dev/test, needs to be [enabled in the Azure portal](direct-ea-administration.md#enable-the-enterprise-devtest-offer)). | | `EnrollmentAccountObjectId` | Yes | String | The Object ID of the enrollment account that the subscription is created under and billed to. The value is a GUID that you get from `Get-AzEnrollmentAccount`. | | `OwnerObjectId` | No | String | The Object ID of any user to add as an Azure RBAC Owner on the subscription when it's created. | | `OwnerSignInName` | No | String | The email address of any user to add as an Azure RBAC Owner on the subscription when it's created. You can use the parameter instead of `OwnerObjectId`.| | `OwnerApplicationId` | No | String | The application ID of any service principal to add as an Azure RBAC Owner on the subscription when it's created. You can use the parameter instead of `OwnerObjectId`. When using the parameter, the service principal must have [read access to the directory](/powershell/module/microsoft.graph.identity.directorymanagement/get-mgdirectoryrole).| ### [Azure CLI](#tab/azure-cli) First, install the preview extension by running `az extension add --name subscription`. Run the [az account create](/cli/azure/account#-ext-subscription-az-account-create) command below, replacing `<enrollmentAccountObjectId>` with the `name` you copied in the first step (