# Azure tech-specific script execution

> Run remote scripts on Azure servers using Azure Run Command without a username and password

---

Site [llms.txt](/llms.txt)

---

Tech-specific script execution lets Cloud Management Platform (CMP) run remote scripts on an Azure VM it cannot reach directly over SSH or WinRM. CMP uses the Azure **Run Command** feature, so Azure delivers the script to the VM and reports the result back.

## Prerequisites

- An Azure resource handler with an environment.
- An Azure account with the VMs you intend to run scripts on.

Azure imposes its own limits on what Run Command can do. See the Microsoft documentation for [running PowerShell scripts on a Windows VM](https://learn.microsoft.com/en-us/azure/virtual-machines/windows/run-command) and [shell scripts on a Linux VM](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/run-command), particularly the listed restrictions.

## Add the parameter to a group or environment

1. Open the group or environment associated with the Azure resource handler.
1. On the **Parameters** tab, select **Add**.
1. Find **Use Tech-Specific Script Execution** and add it.

   ![Screenshot of the Add parameter form.](/img/cmp/use/orchestration/remote-scripts/azure/add-parameter.png)

1. Select the parameter you just added.
1. Check that **Show on Objects** and **Available to all servers** are enabled.

<div class="alert alert-info" role="alert">


You can add the parameter to individual servers, but you must follow these steps to enable it for remote scripts.
</div>


## Add the parameter to a blueprint

This step is optional. As long as the parameter is available to the group or environment, it appears on the order form without being set on the blueprint.

1. Open **Catalog** and select the blueprint.
1. Open the **Parameters** tab.
1. Add **Use Tech-Specific Script Execution**.

## Provision and test

1. Provision a server from a blueprint, and select **Use Tech-Specific Script Execution** on the order form. The parameter appears on the order form as long as it is available to the group or environment.
1. On the provisioned server, run an ad hoc script.

The script should run without asking for a username and password. When tech-specific execution is correctly enabled, the username and password fields do not appear on the ad hoc script form at all, which is the quickest way to confirm it is working.

<div class="alert alert-info" role="alert">


For Linux shell scripts, both `stdout` and `stderr` appear in the output.
</div>


## Related

- [Configure remote script method](/docs/cmp/use/orchestration/remote-scripts/configure-method/): how the parameter and global setting interact.
- [Azure](/docs/cmp/configure/infrastructure/resource-handlers/azure/): setting up the resource handler.
