diff --git a/modules/module-ci-machine/src/main/java/cd/casic/module/machine/enums/AuthenticationType.java b/modules/module-ci-machine/src/main/java/cd/casic/module/machine/enums/AuthenticationType.java index 71f8314c..b73aab7e 100644 --- a/modules/module-ci-machine/src/main/java/cd/casic/module/machine/enums/AuthenticationType.java +++ b/modules/module-ci-machine/src/main/java/cd/casic/module/machine/enums/AuthenticationType.java @@ -22,4 +22,17 @@ public enum AuthenticationType implements IntArrayValuable { public int[] array() { return ARRAYS; } + + public static AuthenticationType of(int code) { + if (code == 0) { + return null; + } + for (AuthenticationType value : values()) { + if (value.code==code) { + return value; + } + } + return null; + } + } diff --git a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/TerminalController.java b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/TerminalController.java index 1e893d80..edf903fc 100644 --- a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/TerminalController.java +++ b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/TerminalController.java @@ -9,6 +9,7 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import static cd.casic.framework.commons.pojo.CommonResult.success; @@ -42,5 +43,12 @@ public class TerminalController { return success(terminalService.getTerminalTransferToken()); } + @GetMapping("/test") + @Operation(summary = "测试主机连接") +// @PreAuthorize("@ss.hasPermission('asset:host:update')") + public CommonResult testHostConnect(@RequestParam Long id) { + return terminalService.testHostConnect(id); + } + } diff --git a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/dto/TerminalConnectDTO.java b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/dto/TerminalConnectDTO.java index 6ef29bd6..3d2022fd 100644 --- a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/dto/TerminalConnectDTO.java +++ b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/controller/dto/TerminalConnectDTO.java @@ -64,22 +64,18 @@ public class TerminalConnectDTO { @Schema(description = "用户名") private String username; -// @Desensitize(toEmpty = true) @Schema(description = "密码") private String password; @Schema(description = "密钥id") private Long keyId; -// @Desensitize(toEmpty = true) @Schema(description = "公钥文本") private String publicKey; -// @Desensitize(toEmpty = true) @Schema(description = "私钥文本") private String privateKey; -// @Desensitize(toEmpty = true) @Schema(description = "私钥密码") private String privateKeyPassword; diff --git a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/jsch/SessionStores.java b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/jsch/SessionStores.java index 31df4aa4..109fb17f 100644 --- a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/jsch/SessionStores.java +++ b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/jsch/SessionStores.java @@ -73,13 +73,13 @@ public class SessionStores { if (useKey) { // 加载密钥 String publicKey = Optional.ofNullable(conn.getPublicKey()) - .map(CryptogramUtil::doDecrypt) + .map(obj->CryptogramUtil.doDecrypt(obj)) .orElse(null); String privateKey = Optional.ofNullable(conn.getPrivateKey()) - .map(CryptogramUtil::doDecrypt) + .map(obj->CryptogramUtil.doDecrypt(obj)) .orElse(null); String password = Optional.ofNullable(conn.getPrivateKeyPassword()) - .map(CryptogramUtil::doDecrypt) + .map(obj->CryptogramUtil.doDecrypt(obj)) .orElse(null); sessionHolder.addIdentityValue(String.valueOf(conn.getKeyId()), privateKey, diff --git a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/terminal/handler/TerminalCheckHandler.java b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/terminal/handler/TerminalCheckHandler.java index 8134cf29..9d0665cf 100644 --- a/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/terminal/handler/TerminalCheckHandler.java +++ b/modules/module-ci-terminal/src/main/java/cd/casic/module/terminal/host/terminal/handler/TerminalCheckHandler.java @@ -33,9 +33,9 @@ import java.util.Map; /** * 终端连接检查 * - * @author Jiahang Li - * @version 1.0.0 - * @since 2023/12/29 15:32 + * @author Yuru Pu + * @version 1.0 + * @since 2025/7/21 14:17 */ @Slf4j @Component @@ -50,8 +50,6 @@ public class TerminalCheckHandler extends AbstractTerminalHandler