Create a web asset
Web assets are a type of resource supported by JumpServer, designed for accessing web systems through remote applications. They are suitable for centrally managing internal systems, SaaS services, or other web-based applications.
Web assets rely on remote application publishers, which can be deployed on either Windows or Linux systems.
When a user connects to a web asset, the system automatically calls the publisher to launch a preconfigured browser that accesses the target system. This approach enables secure and controlled access, effectively preventing users from directly accessing the target address.
Create a web asset

In the left menu, click Assets.
On the right page, click Web tab.
Above the table, click Create, or the to its right.
Select the Website platform.
Type a name for the website.
Type the website URL, include the port number if it is not 80 or 443.
Select one or more nodes.
Choose a autofill method. For more information, see About autofill.
Optionally, add accounts manually or from a template.
Optionally, select only one zone.
Optionally, select one or more tags.
Optionally, type a description for the website.
Click Submit or Save & Continue.
About autofill
The autofill feature is mainly used for websites that require user authentication. Before the user accesses such a website, JumpServer automatically fills in the predefined username and password on the login page to complete authentication. This process is transparent to the user, requiring no manual input of credentials.
Disabled
This disabled method is intended for websites that do not require authentication.
Basic
The basic method is suitable for websites where the username, password, and login button are all on the same page. JumpServer automatically fills in the credentials and submits the form to authenticate the user.
When auto-filling information, it is necessary to locate elements on the web page. The supported selector types include Name selectors, ID selectors, Class selectors, CSS selectors, and XPath selectors. For more information, see Selenium Python: Locating Elements (opens in a new tab).
Script
This script method is intended for websites with complex login procedures. It supports advanced automation, including multi-step authentication and interaction with dynamic page elements.
Script structure
The script here is an array, where each element is a dictionary, representing a step in the script.
Each step contains the following keys:
Integer.
Indicates the execution order of the script, starting from 1 and increasing sequentially.
String.
Built-in variables supported: {USERNAME}, {SECRET}.
If the command is not type, leave the value as an empty string.
String.
The target element to be operated on, which can be a selector or an XPath expression.
String.
The command to be executed, which can be one of the following: click, type, sleep, select_frame.
Command options:
The duration is specified by target, in seconds.
The target supports options like id=iframe_id, name=iframe_name, or index=1 (if index < 0, it switches back to the default/main iframe).
Script example
[
// Switch to the iframe with id=iframe_id.
{
"step": 1,
"command": "select_frame",
"target": "id=iframe_id",
"value": ""
},
// Type the username into the input field with name=username.
// The {USERNAME} variable will be replaced with the actual username when the script is executed.
{
"step": 2,
"command": "type",
"target": "name=username",
"value": "{USERNAME}"
},
// Click the next button to proceed to the next step in the login process.
{
"step": 3,
"command": "click",
"target": "id=next_button",
"value": ""
},
// Pause the script for 5 seconds to allow the next page to load.
{
"step": 4,
"command": "sleep",
"target": "5",
"value": ""
},
// Type the password into the input field with name=password.
// The {SECRET} variable will be replaced with the actual password when the script is executed.
{
"step": 5,
"command": "type",
"target": "name=password",
"value": "{SECRET}"
},
// Click the submit button to complete the login process.
{
"step": 6,
"command": "click",
"target": "id=submit_button",
"value": ""
}
]