Sad Tux - Windows bias detected
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

Detected Bias Types
powershell_heavy
windows_first
windows_tools
missing_linux_example
Summary
The documentation is heavily focused on Windows and PowerShell usage, with all command-line examples and tooling instructions centered around PowerShell cmdlets and Windows-specific patterns. Linux or cross-platform CLI alternatives are not mentioned, and there are no examples using Bash, Azure CLI, or other Linux-native tools. The Python examples are present but limited to the Azure Automation Python SDK, not general Linux workflows. The documentation assumes a Windows/PowerShell environment for automation tasks.
Recommendations
  • Add equivalent examples using Azure CLI (az) commands for credential management, which are cross-platform and work natively on Linux.
  • Include Bash or shell script examples for retrieving and using credentials in runbooks, especially for Linux Hybrid Runbook Workers.
  • Mention and document how Linux users can interact with Azure Automation credentials, including any SDKs or REST API usage.
  • Avoid referring to 'Windows PowerShell' exclusively; use 'PowerShell' and clarify cross-platform compatibility where possible.
  • List Linux-compatible tools and workflows alongside PowerShell cmdlets, and avoid presenting Windows tools first or exclusively.
  • Clarify which features or modules are available on Linux-based Automation workers and provide parity guidance.
GitHub Create Pull Request

Scan History

Date Scan Status Result
2026-02-20 00:00 #402 in_progress Biased Biased
2026-02-19 00:00 #398 in_progress Biased Biased
2026-02-18 00:00 #394 in_progress Biased Biased
2026-02-17 00:00 #390 in_progress Biased Biased
2026-02-16 00:00 #386 in_progress Biased Biased
2026-02-15 00:00 #382 in_progress Biased Biased
2026-02-14 00:00 #378 in_progress Biased Biased
2026-02-13 00:00 #374 in_progress Biased Biased
2026-02-12 00:00 #370 in_progress Biased Biased
2026-02-11 00:00 #366 in_progress Clean Clean
2026-02-10 00:00 #362 completed Biased Biased
2026-02-09 00:00 #358 completed Biased Biased
2026-02-08 00:00 #354 completed Biased Biased
2026-02-05 00:00 #342 completed Biased Biased
2026-02-04 00:00 #338 completed Biased Biased
2026-02-03 00:00 #334 completed Biased Biased
2026-02-02 00:00 #330 completed Biased Biased
2026-02-01 00:00 #326 completed Biased Biased
2026-01-31 00:00 #322 completed Biased Biased
2026-01-30 00:00 #318 completed Biased Biased
2026-01-27 00:00 #306 completed Biased Biased
2026-01-26 00:00 #302 completed Biased Biased
2026-01-24 00:00 #294 completed Biased Biased
2026-01-23 00:00 #290 failed Biased Biased
2026-01-14 00:00 #250 in_progress Biased Biased
2026-01-13 00:00 #246 completed Biased Biased
2026-01-12 00:00 #243 cancelled Biased Biased
2026-01-11 00:00 #240 completed Biased Biased
2026-01-10 00:00 #237 completed Biased Biased
2026-01-09 00:34 #234 completed Biased Biased
2026-01-08 00:53 #231 completed Biased Biased
2026-01-06 18:15 #225 cancelled Clean Clean
2025-08-17 00:01 #83 cancelled Clean Clean
2025-07-13 21:37 #48 completed Biased Biased

Flagged Code Snippets

# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process

# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext

# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password

$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)

# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
    -TenantId $AzureContext.Subscription.TenantId `
    -DefaultProfile $AzureContext
$user = "MyDomain\MyUser"
$pw = ConvertTo-SecureString "PassWord!" -AsPlainText -Force
$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $user, $pw
New-AzureAutomationCredential -AutomationAccountName "MyAutomationAccount" -Name "MyCredential" -Value $cred
$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password
# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process

# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext

# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password

$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)

# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
    -TenantId $AzureContext.Subscription.TenantId `
    -DefaultProfile $AzureContext