Enable AI agents to securely access parameters in AI Desktop Actions
Summarize
Summary of Enable AI agents to securely access parameters in AI Desktop Actions
This functionality enables AI agents within ServiceNow’s AI Desktop Actions to securely access sensitive data such as credentials and input parameters through dedicated Desktop Action Parameter records. By using Parameter records, customers can protect sensitive values, provide dynamic inputs during AI agent execution, and control who can create and manage these parameters.
Show less
Parameter Records and Settings
Only users with the snaia.admin role can create Parameter records, each representing a distinct stored value an AI agent can access. Key settings in a Parameter record include:
- Shared (selected): The parameter value is shared by all users with a single Parameter Value record, suitable for common service accounts or shared API keys. Only admins can create this value.
- Shared (not selected): Multiple users (admins or users with nowassistpaneluser role) can create individual Parameter Value records. During execution, the agent uses the value belonging to the user who triggered it. Ideal for user-specific credentials.
- Mark As Sensitive: Encrypts all associated Parameter Value records to protect sensitive information like passwords and API keys. The agent decrypts values at execution time.
Important: The Shared and Mark As Sensitive settings can only be changed if no Parameter Value records exist yet.
Mapping Parameters to Desktop Action Inputs
In the AI Desktop Actions Design workspace, inputs can be configured to use parameters by selecting the Use parameter checkbox. When adding a desktop action tool in AI Agent Studio, users must map each parameter-configured input to a Parameter record. Rules include:
- All parameter-configured inputs must be mapped before saving the desktop action.
- The same Parameter record can be linked to multiple inputs, but each input can only map to one Parameter record.
- Parameter values override any input values specified in agent instructions or in the ServiceNow Otto panel.
- If a desktop action is updated outside AI Agent Studio, mappings remain until the tool configuration is reopened and saved again.
- Renaming inputs removes existing mappings, requiring remapping before saving.
Example: SSH Parameters
For SSH connector background task desktop actions, admins create separate Parameter records for usernames and passwords. Users with appropriate roles add Parameter Value records per user. During agent execution, instructions must specify that credentials are stored in Parameter records by exact, case-sensitive names. For on-screen task desktop actions, parameter values are supplied via mapping in AI Agent Studio, not through instructions.
Practical Benefits for ServiceNow Customers
- Securely manage sensitive inputs such as credentials and API keys for AI agents.
- Enable dynamic, user-specific or shared parameter values to support various use cases.
- Maintain centralized control over who can create and manage sensitive parameters.
- Ensure consistency and security by enforcing encrypted storage of sensitive information.
- Simplify agent configuration through parameter mapping, reducing manual input errors.
Enable AI agents to securely access stored values, such as credentials and other input data, through Desktop Action Parameter records. Parameters protect sensitive values and provide dynamic inputs to desktop actions during agent execution.
Only users with the sn_aia.admin role can create Parameter records. Parameter records store the names of values that an AI agent accesses during desktop action execution. A separate Parameter record is required for each distinct value.
Map parameters to inputs of on-screen task desktop action
In the Design workspace of the AI Desktop Actions application, you can select the Use parameter check box for desktop action inputs that must retrieve values from the parameter records during execution.
In AI Agent Studio, when you add a desktop action tool that contains inputs configured for parameters, the Map parameters section appears in the modal. Each input configured for a
parameter is listed by step name and description, with a Parameter record drop-down.
The following rules apply to parameter mapping:
- All inputs configured for parameters must be mapped to a Parameter record before the desktop action can be saved.
- The same Parameter record can be mapped to multiple inputs.
- Each input can only be mapped to one Parameter record.
If you update a desktop action in AI Desktop Actions client application after mapping its inputs in AI Agent Studio, the agent continues to use the previous mapping until you reopen the tool configuration and save it again.
If you rename an input in the desktop action, the agent treats it as a new input and the existing mapping for that input is removed. You must remap the renamed input before the desktop action can be saved.
SSH parameter example
The following example applies to SSH connector, background task desktop actions. For on-screen task desktop actions, parameter values are supplied through the Map parameters section in AI Agent Studio and aren't referenced in agent instructions.
Only users with the sn_aia.admin role can create Parameter records for SSH desktop actions. To store both a username and a password, the AIA admin must create two separate Parameter records, one for the username (for example,
un_username_group) and one for the password (for example, un_password_group).
Users with the sn_aia.admin or now_assist_panel_user role can then create Parameter Value records under each Parameter record to store the values. Only one Parameter Value record can be created per user for each Parameter record.
AI Agent instructions during execution
The following example shows how an AI agent instruction can reference stored parameter names:
Connect to SSH server and retrieve my session info. Here are my details:- IP address: 172.27.50.123
- Port: 22
- Retrieve the user name stored in "un_username_group" and the password stored in "un_password_group" parameter records.
Verify that you use the exact names of the Parameter records. Parameter record names are case sensitive. For example, "UserName" and "username" are treated as different values.