Secure Shell (SSH) connector methods
Summarize
Summary of Secure Shell (SSH) connector methods
The Secure Shell (SSH) connector methods in ServiceNow enable you to establish SSH connections to remote servers, execute commands, and properly disconnect sessions. These methods support various authentication types and provide parameters to customize connection and command execution behavior.
Show less
Connect Method
This method establishes an SSH connection to a remote machine. You must provide details such as the remote server's host name or IP address, SSH username, and password (encoded as a secure string). You can choose among three authentication types: Password (default), KeyboardInteractive, and KeyFileAuthentication.
Key parameters include:
- HostName: Remote server address.
- Username: SSH account user name.
- Password: Secure string password, which can be encoded using the SecureStringEncode component.
- Port: Optional port number; defaults to 22.
- CreateShell: Boolean to create a shell stream for commands; defaults to True.
- KeyboardInteractiveAuth: Used when KeyboardInteractive authentication is selected; sends password as a challenge response.
- KeyFilepath and Passphrase: Used when KeyFileAuthentication is selected to specify the private key path and optional passphrase.
RunCommand Method
Once connected, use this method to execute commands on the remote SSH server. Commands can be shell commands or any executable the server recognizes.
Key parameters:
- Command: The command string to execute (e.g.,
echo hello). - Timeout: Optional maximum wait time in seconds for command output; defaults to 30 seconds.
The method returns the output of the executed command as a string.
Disconnect Method
After completing command execution, use the Disconnect method to close the SSH connection cleanly.
Practical Benefits for ServiceNow Customers
- Enables automation workflows that require secure remote command execution over SSH.
- Supports flexible authentication methods to fit varying security requirements.
- Allows encoding of sensitive credentials to maintain security standards.
- Facilitates reliable connection management by providing explicit connect, command execution, and disconnect operations.
This functionality helps streamline integrations and automation involving remote servers, improving operational efficiency and security compliance within ServiceNow workflows.
The Secure Shell (SSH) connector methods establish an SSH connection, execute commands over the established connection, and disconnect the session.
Connect
Establishes an SSH connection. Provide the information required to connect to a remote machine.
Select the settings icon () to choose the authentication type.
Supported authentication types are Password, KeyboardInteractive, and KeyFileAuthentication.
Password is the default authentication type.
| Parameter | Description | Data Port Type | Data type |
|---|---|---|---|
| HostName | Host name of the remote server or IP address. | Data In | String |
| Username | User name of the SSH account. | Data In | String |
| Password |
Secure string representation of the password. Password of the SSH account. You can use the SecureStringEncode component to encode the secure string password as mentioned in the following example. For more information, see Use the SecureStringEncode component.
After you perform this task, you can connect to the remote server. |
Data In | SecureString |
| Port | Optional. The port number for the SSH connection. Default value is 22. | Data In | Integer |
| CreateShell | Optional. If True, a shell stream is created on successful connection. Any command that is executing on this connection uses the shell. If False, any command that is executing on this connection does not the shell. Default value is True. |
Data In | Boolean |
| KeyboardInteractiveAuth | Password as a challenge. If True, the server prompts the client for password to verify the user's identity. Value provided in the password parameter is shared as a response from client. This parameter appears only when KeyboardInteractive is selected from the Authentication Type. |
Data In | Boolean |
| KeyFilepath | Path of the private key. This parameter appears only when KeyFileAuthentication is selected from the Authentication Type. |
Data In | String |
| Passphrase | Optional. If private key is encrypted using Passphrase, same value is provided inside the Passphrase parameter to use the private key. This parameter appears only when KeyFileAuthentication is selected from the Authentication Type. |
Data In | String |
RunCommand
After establishing an SSH connection, execute commands over the established connection using the RunCommand method.
| Parameter | Description | Data Port Type | Data type |
|---|---|---|---|
| Command | Commands that must be executed on the remote SSH server, such as messages or scripts, can be valid shell commands or executable commands that the remote server can understand. For example, echo hello. |
Data In | String |
| Timeout | Optional. The parameter that specifies the maximum time (in seconds) to wait for the command's output from the SSH server when using an interactive shell. Default value is 30. |
Data In | Integer |
| Return | The result of the executed command. For example, after executing the automation, in the Data Preview of Return parameter, "hello" is displayed. |
Data Out | String |
Disconnect
After executing commands, disconnect the established connection using the Disconnect method.
The following example shows the entire automation after adding the Disconnect method.