Method for starting bastion host desktop operation and maintenance client

By using the bastion machine initiator as an HTTP client and interacting with the asset access client and server through the HTTP protocol protocol in the existing bastion machine products, the problems of unfriendly interaction, excessive URL, insufficient log transmission and security in the URL protocol in the existing bastion machine products are solved, and more friendly user interaction, stable business operation and high security systems are achieved.

CN119668767AActive Publication Date: 2025-03-21BEIJING LONGERSEC TECH CO LTD +1
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510191908.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-21
Publication Date
2025-03-21
Estimated Expiration
2045-02-21

AI Technical Summary

Technical Problem

When using the URL protocol launcher mode, existing bastion machine products have problems such as unfriendly interaction, excessive URLs lead to business exceptions, inability to transmit startup error logs, and insufficient security.

Method used

By using the bastion machine initiator as an HTTP client, it interacts with the asset access client and the asset access server with the asset access signature token as the request body, and uses the HTTP protocol to start the desktop operation and maintenance client.

Benefits of technology

Improve the friendliness of user interaction, avoid business exceptions caused by excessive URLs, realize the transmission and storage of startup error logs, and improve the security of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119668767A_ABST
    Figure CN119668767A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of bastion hosts, and discloses a method for starting a bastion host desktop operation and maintenance client, which comprises the following steps of: taking a bastion host starter as an HTTP (Hyper Text Transport Protocol) client, taking an asset access signature token as a request body by the bastion host starter, an asset access client and an asset access server, and interacting by adopting an HTTP protocol; the technical problems that in the prior art, when a URL protocol starter is used for starting the desktop operation and maintenance client, interaction is not friendly, service is abnormal due to the fact that the URL is too long, starting error logs cannot be transmitted, and safety is insufficient are solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of bastion machines, and in particular to a method for starting a bastion machine desktop operation and maintenance client. Background Art

[0002] Usually, maintenance personnel are accustomed to using desktop maintenance clients to maintain target assets. After an enterprise deploys a bastion host system, the bastion host, as the only entry point for target asset maintenance, should also support maintenance personnel to operate target assets through desktop maintenance clients.

[0003] Existing mainstream bastion host products usually have the following two solutions when implementing the desktop operation and maintenance client operation and maintenance target asset functions: Solution 1 is that the user starts the desktop operation and maintenance client by himself. Specifically, when the user requests to operate and maintain a target asset, the interface displays the dynamically generated user, dynamically generated password and protocol proxy service address. Then the user starts the desktop operation and maintenance client by himself and fills in the above information for connection and operation and maintenance.

[0004] Solution 2 is to use the URL protocol launcher mode, see Figure 1 Specifically, the user first installs the launcher provided by the bastion host on the computer. The launcher registers the custom URL protocol with the computer during installation. When the URL navigated by the browser belongs to the custom URL protocol, the launcher is run with the URL as a parameter; then when the user requests to operate a target asset, the front end navigates to the URL address that conforms to the custom URL protocol. The URL path part is usually the encoded access information, which usually includes the desktop operation and maintenance client ID to be started, the account name, the access token authenticated by the bastion host, and the protocol proxy server address; finally, the URL protocol handler mechanism is triggered, the installed launcher is run and the URL is processed. The launcher parses the information described in the previous step and starts to respond to the desktop operation and maintenance client and fills in the account name, access token, server address, etc., and then connects and starts operation and maintenance.

[0005] The disadvantage of launching the desktop operation and maintenance client by the user is that each time the asset is accessed, dynamically generated access information needs to be filled in, which cannot be saved and is cumbersome. The URL protocol launcher mode has the following disadvantages: 1) The bastion host cannot simply detect whether the user has installed the launcher and registered the URL protocol handler, so it cannot prompt users who have not installed it, which is not friendly in terms of interaction; 2) As business logic increases, more and more information needs to be encoded in the custom URL, but browsers have restrictions on the length of URLs, so this solution may cause the custom URL to be truncated and eventually cause business anomalies; 3) The launcher log information is stored in the ordinary user's computer. When a startup failure occurs, the administrator cannot view the cause of the startup failure in the bastion host management interface log. The bastion host after-sales service needs to guide ordinary users to obtain the corresponding logs and troubleshoot, which increases the after-sales cost; 4) In the prior art, the access information encoded in the URL is usually not encrypted or signed. Even if it is encrypted or signed, the key is hard-coded in the launcher program. The access information cannot be tampered with. The launcher may receive specially constructed requests from phishing websites, thereby introducing security risks.

[0006] Therefore, a method for starting the bastion machine desktop operation and maintenance client is needed to solve the technical problems of unfriendly interaction, business abnormalities caused by too long URLs, inability to transmit startup error logs, and insufficient security when starting the desktop operation and maintenance client using the URL protocol launcher. Summary of the invention

[0007] The purpose of the present invention is to provide a method for starting a bastion machine desktop operation and maintenance client. The method uses a bastion machine launcher as an HTTP client, and the bastion machine launcher, an asset access client and an asset access server use an asset access signature token as a request body, and adopts the HTTP protocol to interact to complete the startup of the desktop operation and maintenance client. The method solves the technical problems of unfriendly interaction, business abnormalities caused by too long URLs, inability to transmit startup error logs and insufficient security when the desktop operation and maintenance client is started using the URL protocol launcher.

[0008] The present invention is achieved through the following technical solutions: A method for starting a bastion machine desktop operation and maintenance client, installing a bastion machine launcher when deploying a bastion machine, and using the bastion machine launcher as an HTTP client; Run the bastion host launcher. When the asset access client listens to the user's request to access the target asset through the asset access page, the bastion host launcher, the asset access client, and the asset access server use the asset access signature token as the request body and interact using the HTTP protocol to obtain access information. Then, the bastion host launcher starts the desktop operation and maintenance client based on the access information and establishes a connection with the protocol proxy server.

[0009] The desktop operation and maintenance client mentioned in the present invention is a client used by a user when connecting to a server, such as xshell, mstsc, vncviewer, filezilla, etc.

[0010] The bastion host launcher mentioned in the present invention is used to receive the startup instruction sent by the bastion host, and ultimately start and fill in the desktop operation and maintenance client on behalf of the user.

[0011] In order to better implement the present invention, further, when the bastion machine launcher is installed, the startup item is registered with the operating system running on the asset access client; when the user logs in to the desktop computer, the bastion machine launcher can automatically run and provide HTTP services to the outside world.

[0012] In order to better implement the present invention, further, in the process of interaction using the HTTP protocol, the asset access client monitors the startup error log of the bastion host launcher and transmits the startup error log to the asset access server, and the asset access server associates the startup error log with the operation and maintenance session record.

[0013] In order to better implement the present invention, further, in the process of interaction using the HTTP protocol, when a startup exception occurs that causes the bastion host desktop operation and maintenance client to be unable to start, the bastion host launcher, the asset access client or the asset access server generates startup error information corresponding to the startup exception as a startup error log.

[0014] In order to better implement the present invention, further, in the process of using the HTTP protocol for interaction, the asset access client sends a request for verifying version information to the bastion machine launcher; When the request to verify the version information fails, the asset access client prompts the user to install or run the bastion host launcher through the asset access page; When the version information returned by the bastion machine launcher is verified, the asset access client sends a request to the bastion machine launcher to start the desktop operation and maintenance client; When the version information returned by the bastion host launcher fails to pass verification, the asset access client prompts the user to upgrade the bastion host launcher and re-run the bastion host launcher through the asset access page.

[0015] In order to better implement the present invention, further, the asset access signature token is a JSON Web Token; the asset access signature token uses an encryption algorithm as a signature, and the payload of the asset access signature token is provided with a verification public key, a UTC time of token expiration, a URL of access information, and a unique log identifier.

[0016] In order to better implement the present invention, further, when the bastion host launcher receives a request to verify version information or a request to start a desktop operation and maintenance client, the user-trusted status of the signature verification public key is checked; If the signature verification public key is not trusted by the user, the bastion host launcher sends a request to the user to ask whether to trust the signature verification public key; If the verification public key is trusted by the user, the bastion host launcher uses the verification public key to verify the signature of the asset access signature token; If the signature verification is successful, the bastion host launcher sends version information to the asset access client or sends a request to access the URL of the access information to the asset access server; If the signature verification fails, the bastion host launcher prompts the user that an abnormal request has been received.

[0017] In order to better implement the present invention, further, when the asset access server receives the URL of the access information, the asset access signature token is signature verified and the authentication status of the operation and maintenance session record corresponding to the unique log identifier is verified; If the signature verification is successful and the operation and maintenance session record corresponding to the unique log identifier is in the pending authentication state, the asset access server sends access information to the bastion host launcher. Otherwise, the asset access server prompts the user that the access information acquisition failed.

[0018] In order to better implement the present invention, further, the access information includes the asset protocol type, the protocol proxy server address, the user name and the one-time password for protocol proxy authentication. When the bastion machine launcher receives the access information, the desktop operation and maintenance client is started according to the access information and filled in on behalf of the desktop operation and maintenance client, so that the desktop operation and maintenance client is connected to the protocol proxy server.

[0019] In order to better implement the present invention, further, when the bastion host is deployed for the first time, a private key corresponding to the verification public key of the asset access signature token is dynamically generated.

[0020] Compared with the prior art, the present invention has the following advantages and beneficial effects: (1) Use HTTP protocol for interaction between the bastion host launcher, asset access client, and asset access server, so that the asset access client can detect whether the user has installed the bastion host launcher and prompt, making the interaction more friendly and improving ease of use; (2) The HTTP protocol is used for interaction between the bastion host launcher, asset access client, and asset access server, which can transmit startup error logs and reduce after-sales costs; (3) Using asset access signature tokens as the request body for interaction can prevent access to information from being tampered with, thus improving security; (4) Using the asset access signature token as the request body of the interaction can avoid business anomalies caused by URLs that are too long, thereby improving stability. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The present invention is further described in conjunction with the following drawings and embodiments, and all the concepts and innovations of the present invention should be regarded as the disclosed contents and the protection scope of the present invention.

[0022] Figure 1 It is a schematic diagram of the prior art.

[0023] Figure 2 This is a schematic diagram of Example 1 of the present invention.

[0024] Figure 3 This is a flow chart of step S3 in Embodiment 2 of the present invention.

[0025] Figure 4 This is a flow chart of step S4 in Embodiment 2 of the present invention.

[0026] Figure 5 This is a flow chart of step S5 in Embodiment 2 of the present invention.

[0027] Figure 6 This is a flow chart of step S6 in Embodiment 2 of the present invention.

[0028] Figure 7 This is a flow chart of step S7 in Embodiment 2 of the present invention.

[0029] Figure 8 This is a flow chart of step S10 to step S11 in embodiment 2 of the present invention. DETAILED DESCRIPTION

[0030] Example 1 This embodiment provides a method for starting a bastion machine desktop operation and maintenance client. The bastion machine in this embodiment includes a bastion machine launcher, an asset access client, an asset access server, a desktop operation and maintenance client, and a protocol proxy server, and the asset access client also includes an asset access page; the method includes installing the bastion machine launcher when deploying the bastion machine, and using the bastion machine launcher as an HTTP client; running the bastion machine launcher, when the asset access client listens to the user's request to access the target asset through the asset access page, the bastion machine launcher, the asset access client, and the asset access server use the asset access signature token as the request body and interact using the HTTP protocol to obtain access information; then, the bastion machine launcher starts the desktop operation and maintenance client according to the access information and establishes a connection with the protocol proxy server.

[0031] See also Figure 2 In a specific implementation, the bastion machine launcher is installed when the bastion machine is deployed, and the bastion machine launcher is used as an HTTP client and runs. The method for starting the bastion machine desktop operation and maintenance client specifically includes the following steps: Step S1: The asset access client requests to obtain the asset access signature token. Specifically, when the asset access client monitors the user's request to access the target asset through the asset access page, the asset access client uses the HTTP protocol to request the asset access server to obtain the asset access signature token corresponding to the target asset. Step S2: The asset access server returns the asset access signature token. Specifically, when the asset access server receives the HTTP protocol request from the asset access client, it returns the asset access signature token corresponding to the target asset to the asset access client. Step S3: The asset access client requests to verify the bastion host launcher version. Specifically, the asset access client uses the asset access signature token as the request body and uses an HTTP POST request to establish a connection with the bastion host launcher and verify the bastion host launcher version. Step S4: The bastion host initiator returns version information. Specifically, after the bastion host initiator completes the verification of the asset access signature token, it returns the version information to the asset access client. Step S5: The asset access client requests to start the desktop operation and maintenance client. Specifically, the asset access client verifies the received version information. When the version information meets the version requirement of the current bastion machine, the asset access client uses the asset access signature token as the request body and uses HTTP POST to request the bastion machine launcher to start the desktop operation and maintenance client. Step S6: The bastion host initiator requests to obtain access information. Specifically, the bastion host initiator verifies the asset access signature token again. When the verification is successful, the asset access signature token is used as the request body, and HTTP POST is used to request the asset access server to access the URL of the access information in the asset access signature token to obtain the access information. Step S7: The asset access server returns access information. Specifically, the asset access server verifies the asset access signature token in the request of the bastion host initiator, and returns access information to the bastion host initiator after the verification is successful. Step S8, the bastion host launcher launches the desktop operation and maintenance client according to the access information, specifically, the bastion host launcher launches the corresponding desktop operation and maintenance client according to the access information, and fills in the authentication information in the access information; Step S9: The desktop operation and maintenance client is connected to the protocol proxy server.

[0032] By adopting this implementation mode, information transmission can be achieved by using HTTP protocol interaction between modules of the bastion host; In the URL protocol bastion launcher mode of the prior art, after the browser navigates to the custom URL, the browser does not provide an interface or callback mechanism for the front-end js to determine whether the URL protocol handler (custom URL processor) has been registered on the computer, or whether the bastion launcher has been triggered. Therefore, it is impossible to detect whether the user has installed the bastion launcher, and it is also impossible to obtain any information about the bastion launcher, including version information, startup error logs, etc. With HTTP protocol interaction, the asset access client can detect whether the user has installed the bastion host launcher by sending an HTTP protocol connection request to the bastion host launcher. If the connection request fails, it will be considered that the user has not installed or started the bastion host launcher, which greatly improves interactivity. At the same time, when the bastion host launcher has been installed and is in normal use, the asset access client can also obtain startup error information such as the bastion host launcher's version information is too low, the asset access signature token verification failed, etc., which leads to startup failure. These startup error messages are stored in the bastion host instead of in the ordinary user's computer. People with administrative privileges can view the corresponding startup failure reasons in the bastion host's management page. The bastion host after-sales service does not need to guide ordinary users to obtain the corresponding logs for troubleshooting, which reduces after-sales costs.

[0033] With this implementation, when performing HTTP protocol interaction, the asset access signature token is combined to further ensure the security of the entire process; In the URL protocol bastion launcher mode of the prior art, the URL is passed to the bastion launcher as a running parameter. The bastion launcher needs to parse the URL to obtain access information from it. However, if the access information in the URL is encrypted, the launcher also needs to have a corresponding key to decrypt the URL. However, in the existing solution, the key is hard-coded and may be cracked to expose the key, posing a security risk. In this implementation, the asset access signature token itself carries a signature. The signature private key is initialized when the bastion host is deployed, and the signature verification public key is placed in the token. When interacting, users are required to confirm and verify the asset access signature token, which can effectively prevent the access information from being tampered with and improve the security during use. At the same time, using the URL as a running parameter will make the URL too long, and the length of the browser URL is limited. Therefore, this solution may cause the custom URL to be truncated and eventually cause business abnormalities; By adopting this implementation, the URL of the access information can be set in the asset access signature token, so that the URL length of the access information is fixed, which effectively avoids the situation where the URL is truncated and eventually causes business abnormalities; In addition, in the prior art, the bastion host launcher obtains access information by directly accessing the URL, while in the present implementation, the bastion host launcher needs to first make a request to the asset access server. Only after the asset access server completes the verification can it further obtain the access information through the URL of the access information. This can further prevent the access information from being tampered with, improve security, and ensure that the parameters transmitted to the bastion host launcher are controlled and secure.

[0034] Example 2 This embodiment is further optimized on the basis of embodiment 1. In this embodiment, when installing the bastion machine launcher, the startup item is registered with the operating system running on the asset access client; when monitoring the user logging into the desktop computer, the bastion machine launcher can automatically run and provide HTTP services to the outside world, and the server monitors a fixed port; By adopting this implementation, the bastion machine launcher can be easily used as an HTTP client and automatically run to provide HTTP services to the outside world, so that the asset access page of the bastion machine can connect to the service and request to start the desktop operation and maintenance client, and the bastion machine launcher can automatically run as the user logs in to the computer desktop to provide HTTP services to the outside world, preventing the bastion machine launcher from not running when the user needs to start the desktop operation and maintenance client; the fixed port that the server listens on can be set by yourself, such as 127.0.0.1:19567, and if there is a port conflict, a pop-up window will prompt the user.

[0035] In this embodiment, during the interaction using the HTTP protocol, the asset access client monitors the startup error log of the bastion host launcher and transmits the startup error log to the asset access server, which associates the startup error log with the operation and maintenance session record.

[0036] Furthermore, in the process of interaction using the HTTP protocol, when a startup exception occurs that causes the bastion host desktop operation and maintenance client to be unable to start, the bastion host launcher, asset access client or asset access server generates startup error information corresponding to the startup exception as a startup error log.

[0037] Specifically, in this embodiment, when an abnormal situation occurs such as the bastion host launcher not being detected, version information verification failure, signature verification failure, access information acquisition failure, etc., resulting in the inability to start the desktop operation and maintenance client, the bastion host launcher, asset access client or asset access server will generate a startup error message corresponding to the abnormal situation as a startup error log. The startup error information is associated with the operation and maintenance session record and stored in the asset access server for viewing by administrators with relevant permissions. The bastion host launcher, asset access client or asset access server will also send a corresponding prompt to the user based on the startup error information.

[0038] In this embodiment, during the interaction using the HTTP protocol, the asset access client sends a request for verifying version information to the bastion host launcher; When the request to verify the version information fails, the asset access client prompts the user to install or run the bastion host launcher through the asset access page; When the version information returned by the bastion machine launcher is verified, the asset access client sends a request to the bastion machine launcher to start the desktop operation and maintenance client; When the version information returned by the bastion host launcher fails to pass verification, the asset access client prompts the user to upgrade the bastion host launcher and re-run the bastion host launcher through the asset access page.

[0039] By adopting this implementation, if the user has not installed or run the bastion host launcher or the bastion host launcher version does not meet the requirements, the user will be promptly prompted and given the correct operation, which can make the interaction more friendly. The version information requirements can be set according to the actual situation, such as the bastion host launcher version number is the same as the latest version number or the difference is within two version numbers.

[0040] Optionally, the asset access signature token is a JSON Web Token; the asset access signature token uses an encryption algorithm as a signature, and the payload of the asset access signature token is provided with a signature verification public key, a UTC time when the token expires, a URL for access information, and a unique log identifier.

[0041] In this embodiment, the signature algorithm of the asset access signature token can be an asymmetric encryption algorithm based on RSA such as RS256, RS384, RS512, or an asymmetric encryption algorithm based on elliptic curve cryptography (ECC) such as ES256, ES384, ES512; The unique log identifier corresponds to the operation and maintenance session record, so that when the startup error log is transmitted, the startup error log can be accurately inserted into the operation and maintenance session record.

[0042] Specifically, when JSON Web Token is used as the asset access signature token, its payload is in JSON data format, including verify_key, logid, auth_url and exp; among them, the attribute value type of verify_key is a string, and the value is the asset access signature token verification public key in PKCS1 PEM format; the attribute value type of logid is a string, and the content is the unique log identifier generated by the asset access service, such as: SC0A81BGIO, which is used to identify the unique operation and maintenance session record; the attribute value type of auth_url is a string, which is the URL for obtaining access information from the asset access server, such as: https: / / 192.168.20.10 / assets_manager / get_auth_info; the attribute value type of exp is a number, and the value is the token expiration UTC time, which defaults to half a minute after the token creation time.

[0043] In this embodiment, when the bastion host is initially deployed, the private key corresponding to the verification public key of the asset access signature token is dynamically generated instead of being hard-coded in the bastion host code, which can improve security.

[0044] Further, when the bastion host launcher receives a request to verify version information or a request to launch a desktop operation and maintenance client, it checks the user-trusted status of the signature verification public key; If the signature verification public key is not trusted by the user, the bastion host launcher sends a request to the user to ask whether to trust the signature verification public key; If the verification public key is trusted by the user, the bastion host launcher uses the verification public key to verify the signature of the asset access signature token; If the signature verification is successful, the bastion host launcher sends version information to the asset access client or sends a request to access the URL of the access information to the asset access server; If the signature verification fails, the bastion host launcher prompts the user that an abnormal request has been received.

[0045] Further, when the asset access server receives the URL of the access information, it performs signature verification on the asset access signature token and verifies the authentication status of the operation and maintenance session record corresponding to the unique log identifier; If the signature verification is successful and the operation and maintenance session record corresponding to the unique log identifier is in the pending authentication state, the asset access server sends access information to the bastion host launcher. Otherwise, the asset access server prompts the user that the access information acquisition failed.

[0046] See also Figure 3 In an optional implementation, step S3 includes the following steps: Step S301, check whether the bastion host launcher is running, specifically, the asset access client uses the asset access signature token as the request body, and uses HTTP POST to request the http: / / 127.0.0.1:19567 / version port of the bastion host launcher to request to establish a connection. When the connection is successful, execute step S302, and when the connection fails, execute step S303; Step S302: The asset access client establishes a connection with the bastion host initiator; Step S303, prompting the user to install the bastion host launcher and generating a startup error message, specifically, the asset access client request connection fails, a pop-up window prompts the user to install or run the bastion host launcher, and generates a startup error message of the error type failure to connect to the bastion host launcher.

[0047] By adopting this implementation, a direct HTTP connection between the asset access client and the bastion host launcher can be securely established. By requesting the connection to succeed or fail, it is detected whether the user has installed or is running the bastion host launcher, and further prompts are given to improve interactivity. By generating corresponding startup error information, the bastion host can establish a startup error log during the startup process.

[0048] See also Figure 4 In an optional implementation, step S4 includes the following steps: Step S401: Check whether the signature verification public key is trusted by the user. Specifically, the bastion host initiator receives a request from the asset access client to verify the version information, checks the user-trusted status of the signature verification public key, and executes step S402 if the user does not trust the public key. If the user trusts the public key, execute step S403. Step S402: prompt the user whether to trust the verification public key and generate a startup error message. Specifically, the bastion host launcher checks that the verification public key is not trusted by the user, pops up a window to prompt the user whether to trust the new asset access token verification public key, and generates a startup error message of error type "user does not trust the asset access token verification public key". At the same time, return to step S401. Step S403: Verify the asset access signature token. Specifically, the bastion host launcher uses the signature verification public key trusted by the user to perform signature verification on the asset access signature token. If the verification succeeds, execute step S404; if the verification fails, execute step S405; Step S404: Return version information, specifically, the bastion host initiator returns the current version information to the asset access client; Step S405, prompting the user that an abnormal request has been received and generating a startup error message, specifically, the bastion host launcher pops up a window to prompt the user that an abnormal request has been received, and generates a startup error message with an error type of failed signature public key verification.

[0049] By adopting this implementation, the version information of the bastion host launcher can be securely obtained. The security of the token can be ensured by prompting the user to confirm whether to trust the signature verification public key and perform signature verification. The corresponding startup error information is generated to facilitate the bastion host to establish a startup error log during the startup process.

[0050] See also Figure 5 In an optional implementation, step S5 includes the following steps: Step S501: Check whether the version information meets the version requirements of the current bastion host. Specifically, the asset access client checks whether the returned version information meets the version requirements of the current bastion host. If the version requirements are met, step S502 is executed. If the version requirements are not met, step S503 is executed. Step S502: Request to start the desktop operation and maintenance client, specifically, the asset access client uses the asset access signature token as the request body and uses HTTP POST to request the http: / / 127.0.0.1:19567 / launch port of the bastion host launcher; Step S503, prompting the user to upgrade the bastion host launcher and generating a startup error message, specifically, the asset access client prompts the user to upgrade the bastion host launcher program and re-run it, and generates a startup error message with the error type being that the bastion host launcher version does not meet the requirements.

[0051] By adopting this implementation, the version information of the bastion host launcher can be securely verified, and the user can be promptly prompted to perform correct operations. By generating corresponding startup error information, the bastion host can establish a startup error log during the startup process.

[0052] See also Figure 6 In an optional implementation, step S6 includes the following steps: Step S601: Verify the asset access signature token. Specifically, the bastion host launcher uses the signature verification public key trusted by the user to perform signature verification on the asset access signature token. If the verification succeeds, execute step S602. If the verification fails, execute step S603. Step S602: Request to obtain access information. Specifically, the bastion host initiator uses the asset access token as the request body and uses HTTP POST to request the asset access server to access the URL auth_url of the access information in the asset access token. Step S603, prompting the user that an abnormal request has been received and generating a startup error message, the bastion host launcher pops up a window to prompt the user that an abnormal request has been received, and generates a startup error message with an error type of failed signature public key verification.

[0053] By adopting this implementation, it is possible to securely request access to the URL of the access information, promptly prompt the user with the cause of the error, and generate corresponding startup error information so that the bastion host can establish a startup error log during the startup process.

[0054] In an optional implementation, step S7 includes the following steps: See also Figure 7 , step S701, verify whether the requirement for returning access information is met, specifically, after the asset access server receives the request of the URL auth_url of the access information in the access token, it uses the signature verification public key trusted by the user to perform signature verification on the asset access signature token, verify whether the operation and maintenance session record corresponding to the unique log identifier exists, and verify whether the status of the operation and maintenance session record is to be authenticated. When the signature verification is successful, the operation and maintenance session record exists and the status of the operation and maintenance session record is to be authenticated, execute step S702, otherwise execute step S703; Step S702: Return access information, specifically, the asset access server returns access information to the bastion host initiator; Step S703: prompting the user that the acquisition of access information fails and generating a startup error message, specifically, the asset access server pops up a window to prompt the user that the acquisition of access information fails, and generates a startup error message with the error type of failure to acquire access information.

[0055] In this embodiment, the access information includes the asset protocol type, the protocol proxy server address, the user name and the one-time password for protocol proxy authentication. When the bastion machine launcher receives the access information, it starts the desktop operation and maintenance client according to the access information and fills in the information on behalf of the desktop operation and maintenance client, so that the desktop operation and maintenance client is connected to the protocol proxy server; By adopting this implementation, access information can be securely obtained, and the user can be promptly prompted with the cause of the error. By generating corresponding startup error information, the bastion host can establish a startup error log during the startup process.

[0056] See also Figure 8 In the above implementation, the steps of generating startup error information, such as step S303, step S402, step S405, step S503, step S603 and step S703, the startup error information generated will trigger the execution of step S10 and step S11: Step S10, monitoring startup error information, specifically, the asset access client responds to the startup error information, uses the startup error information and the unique log identifier logid in the asset access signature token as the request body, and uses HTTP POST to request the asset access server / assets_manager / log_access_error address; Step S11, storing the startup error information, specifically, the asset access server receives a request for accessing the service / assets_manager / log_access_error address, and inserts the startup error information in the request into the operation and maintenance session record corresponding to the unique log identifier logid.

[0057] By adopting this implementation mode, the startup error information generated in the process of starting the desktop operation and maintenance client can be timely monitored through the perception of the asset access client and transmitted to the asset access server. The asset access server accurately matches the startup error information and the operation and maintenance session record through the unique log identifier logid for the convenience of management personnel to view; of course, startup error information may also be generated in steps S8 and S9, and the error type will be classified as a failure to start the desktop operation and maintenance client, which can also be perceived and monitored by the asset access client.

[0058] The above description is only a preferred embodiment of the present invention and does not limit the present invention in any form. Any simple modification or equivalent change made to the above embodiment based on the technical essence of the present invention shall fall within the protection scope of the present invention.

Claims

1. A method for starting a bastion machine desktop operation and maintenance client, characterized in that: When deploying a bastion host, install the bastion host launcher and use the bastion host launcher as the HTTP client; Run the bastion host launcher. When the asset access client listens to the user's request to access the target asset through the asset access page, the bastion host launcher, the asset access client, and the asset access server use the asset access signature token as the request body and interact using the HTTP protocol to obtain access information. Then, the bastion host launcher starts the desktop operation and maintenance client based on the access information and establishes a connection with the protocol proxy server.

2. The method for starting a bastion machine desktop operation and maintenance client according to claim 1, characterized in that: When installing the bastion host launcher, register the startup item with the operating system running on the asset access client; when monitoring the user logging into the desktop computer, the bastion host launcher can automatically run and provide HTTP services to the outside world.

3. The method for starting a bastion machine desktop operation and maintenance client according to claim 1, characterized in that: In the process of interaction using the HTTP protocol, the asset access client monitors the startup error log of the bastion host launcher and transmits the startup error log to the asset access server, and the asset access server associates the startup error log with the operation and maintenance session record.

4. The method for starting a bastion machine desktop operation and maintenance client according to claim 3 is characterized in that: During the interaction using the HTTP protocol, when a startup exception occurs that causes the bastion host desktop operation and maintenance client to be unable to start, the bastion host launcher, asset access client, or asset access server generates startup error information corresponding to the startup exception as a startup error log.

5. The method for starting a bastion machine desktop operation and maintenance client according to claim 1, characterized in that: In the process of interacting using the HTTP protocol, the asset access client sends a request to the bastion host launcher to verify version information; When the request to verify the version information fails, the asset access client prompts the user to install or run the bastion host launcher through the asset access page; When the version information returned by the bastion machine launcher is verified, the asset access client sends a request to the bastion machine launcher to start the desktop operation and maintenance client; When the version information returned by the bastion host launcher fails to pass verification, the asset access client prompts the user to upgrade the bastion host launcher and re-run the bastion host launcher through the asset access page.

6. The method for starting the bastion machine desktop operation and maintenance client according to claim 5 is characterized in that: The asset access signature token is a JSON Web Token; the asset access signature token uses an encryption algorithm as a signature, and the payload of the asset access signature token is provided with a signature verification public key, the UTC time when the token expires, the URL of the access information, and a unique log identifier.

7. The method for starting a bastion machine desktop operation and maintenance client according to claim 6 is characterized in that: When the bastion host launcher receives a request to verify version information or a request to launch a desktop operation and maintenance client, it checks the user-trusted status of the signature verification public key; If the signature verification public key is not trusted by the user, the bastion host launcher sends a request to the user to ask whether to trust the signature verification public key; If the verification public key is trusted by the user, the bastion host launcher uses the verification public key to verify the signature of the asset access signature token; If the signature verification is successful, the bastion host launcher sends version information to the asset access client or sends a request to access the URL of the access information to the asset access server; If the signature verification fails, the bastion host launcher prompts the user that an abnormal request has been received.

8. The method for starting a bastion machine desktop operation and maintenance client according to claim 7 is characterized in that: When the asset access server receives the URL of the access information, it performs signature verification on the asset access signature token and verifies the authentication status of the operation and maintenance session record corresponding to the unique log identifier; If the signature verification is successful and the operation and maintenance session record corresponding to the unique log identifier is in the pending authentication state, the asset access server sends access information to the bastion host launcher. Otherwise, the asset access server prompts the user that the access information acquisition failed.

9. The method for starting a bastion machine desktop operation and maintenance client according to claim 8, characterized in that: The access information includes the asset protocol type, the protocol proxy server address, the user name and the one-time password for protocol proxy authentication; when the bastion machine launcher receives the access information, it starts the desktop operation and maintenance client according to the access information and fills in the information on behalf of the desktop operation and maintenance client, so that the desktop operation and maintenance client is connected to the protocol proxy server.

10. The method for starting a bastion machine desktop operation and maintenance client according to claim 6, characterized in that: When the bastion host is deployed for the first time, the private key corresponding to the public key for verifying the asset access signature token is dynamically generated.

Citation Information

Patent Citations

  • Method and system for auditing screen record based on WEB proxy

    CN104219330A

  • Log remote acquisition method based on bastion host

    CN111984508A

  • Browser password filling method for bastion host operation and maintenance system

    CN117215667A

  • Remote operation and maintenance method and computer readable storage medium

    CN118214637A

  • Method for implementing automatic password change having fault tolerance mechanism for cloud host and cloud bastion host

    WO2023050110A1