- 08 Aug 2024
- 2 Minutes to read
- Print
- DarkLight
PowerShell Module Basics
- Updated on 08 Aug 2024
- 2 Minutes to read
- Print
- DarkLight
Module Details | |
Installation Location | Core module |
Step Location | Integration > Powershell |
Settings Location | N/A |
Prerequisites | PowerShell Module Installed Project Dependency made |
Overview
The PowerShell Module allows the execution of Powershell scripts from Flows.
PowerShell supports numerous plugins for integrating with system software and enterprise applications. Powershell can only run via a remote connection.
Run Powershell Remotely
All PowerShell steps run remotely. This exposes new inputs to specify which machine to remotely run the script and uses "WS-Management-based Windows PowerShell remoting". Users must add the IP of the VM to the TrustedHosts list during configuration by entering the following command:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value (IP Address)
To verify that the command works, use the following Powershell command:
Get-Item WSMan:\localhost\Client\TrustedHosts
This will allow Powershell to be run remotely as described in this article: Computer Trusted Hosts.
Troubleshooting - Enabling Powershell Remoting
While not required for the Powershell module or for enabling remote connection, Administrators experiencing difficulties with the above option may instead enable Powershell Remoting.
This method enables remote Powershell connections by calling the server itself remotely.
By default, WS-Man and Powershell remoting use ports 5985 and 5986 for connections over HTTP and HTTPS, respectively.
Open Powershell as an Administrator to enable remoting and run the following command.
Enable-PSRemoting -Force
The following response should be returned:
Example
- In a Project, navigate to [Project Name] > Manage > Integrations > Scripting> Powershell. Right-click Powershell Script Projects and click Add Script Folder.
- On the Add Script Project window, enter a name for the Script Project that will be used and click SAVE. This name will be used as a category in the Flow Designer to group Powershell steps.
- Right-click on the new Powershell Script Project and click Add Script. There is also an Add Script action towards the top of the folder.
- On the Add Script window, enter a name for the script under ScriptName and the code under Script. If applicable, add input and output values.
Input values must be strings, match the Powershell token name minus the dollar $ symbol, and allow array input via a comma-separated list to mimic Powershell Console behavior.
Output values cannot return structured data; however, a script returning an object can specify its data members to return as string arrays. For further information, refer to the "Process Class" article in Microsoft's documentation. - Click SAVE to return to Powershell Script Project.
- In a Flow Designer, navigate to Integration > Powershell > [Script Project Name]. Add the script step to the workspace. The values entered for the Input and Output categories should appear on the step.