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:
⚠️ windows_first
⚠️ powershell_heavy
⚠️ windows_tools
⚠️ missing_linux_example
Summary:
The documentation is heavily oriented toward Windows environments. All examples, tools, and scripts assume a Windows OS (e.g., .cmd, .bat, .ps1 files, use of msiexec.exe, cmdkey, odbcconf.exe, and PowerShell). There are no Linux or cross-platform examples, and all instructions and sample scripts are Windows-specific. The documentation does not mention or provide alternatives for Linux-based environments, nor does it clarify that Azure-SSIS IR is Windows-only, which may confuse users seeking Linux support.
Recommendations:
  • Explicitly state early in the documentation that Azure-SSIS IR is a Windows-based service, and Linux customizations are not supported. This will set clear expectations for cross-platform users.
  • If any Linux or cross-platform support is planned or available (e.g., for other Azure Data Factory runtimes), provide links or references to those options.
  • Where possible, clarify that all script and tool references (e.g., .cmd, .ps1, msiexec.exe) are Windows-specific, and suggest alternatives or workarounds for users on non-Windows platforms (such as preparing scripts on Linux and uploading via cross-platform tools).
  • Add a section or FAQ addressing the lack of Linux support, and direct users to appropriate Azure documentation for Linux-based data integration scenarios.
  • If any steps (such as uploading files to Azure Storage) can be performed with cross-platform tools (e.g., Azure CLI, azcopy), provide those examples alongside Windows-specific ones.
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
2025-07-09 13:09 #3 cancelled ✅ Clean
2025-07-08 04:23 #2 cancelled ❌ Biased

Flagged Code Snippets

$ResourceGroupName = "[your Azure resource group name]" $DataFactoryName = "[your data factory name]" $AzureSSISName = "[your Azure-SSIS IR name]" # Custom setup info: Standard/express custom setups $SetupScriptContainerSasUri = "" # OPTIONAL to provide a SAS URI of blob container for standard custom setup where your script and its associated files are stored $ExpressCustomSetup = "[RunCmdkey|SetEnvironmentVariable|InstallAzurePowerShell|SentryOne.TaskFactory|oh22is.SQLPhonetics.NET|oh22is.HEDDA.IO|KingswaySoft.IntegrationToolkit|KingswaySoft.ProductivityPack|Theobald.XtractIS|AecorSoft.IntegrationService|CData.Standard|CData.Extended or leave it empty]" # OPTIONAL to configure an express custom setup without script # Add custom setup parameters if you use standard/express custom setups if(![string]::IsNullOrEmpty($SetupScriptContainerSasUri)) { Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -SetupScriptContainerSasUri $SetupScriptContainerSasUri } if(![string]::IsNullOrEmpty($ExpressCustomSetup)) { if($ExpressCustomSetup -eq "RunCmdkey") { $addCmdkeyArgument = "YourFileShareServerName or YourAzureStorageAccountName.file.core.windows.net" $userCmdkeyArgument = "YourDomainName\YourUsername or azure\YourAzureStorageAccountName" $passCmdkeyArgument = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourPassword or YourAccessKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.CmdkeySetup($addCmdkeyArgument, $userCmdkeyArgument, $passCmdkeyArgument) } if($ExpressCustomSetup -eq "SetEnvironmentVariable") { $variableName = "YourVariableName" $variableValue = "YourVariableValue" $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.EnvironmentVariableSetup($variableName, $variableValue) } if($ExpressCustomSetup -eq "InstallAzurePowerShell") { $moduleVersion = "YourAzModuleVersion" $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.AzPowerShellSetup($moduleVersion) } if($ExpressCustomSetup -eq "SentryOne.TaskFactory") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "oh22is.SQLPhonetics.NET") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "oh22is.HEDDA.IO") { $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup) } if($ExpressCustomSetup -eq "KingswaySoft.IntegrationToolkit") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "KingswaySoft.ProductivityPack") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "Theobald.XtractIS") { $jsonData = Get-Content -Raw -Path YourLicenseFile.json $jsonData = $jsonData -replace '\s','' $jsonData = $jsonData.replace('"','\"') $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString($jsonData) $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "AecorSoft.IntegrationService") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "CData.Standard") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } if($ExpressCustomSetup -eq "CData.Extended") { $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey") $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey) } # Create an array of one or more express custom setups $setups = New-Object System.Collections.ArrayList $setups.Add($setup) Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -ExpressCustomSetup $setups } Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName ` -DataFactoryName $DataFactoryName ` -Name $AzureSSISName ` -Force