refactor: 重构终端连接流程.
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
package com.orion.ops.module.asset.controller;
|
||||
|
||||
import com.orion.ops.framework.web.core.annotation.RestWrapper;
|
||||
import com.orion.ops.module.asset.entity.vo.HostTerminalAccessVO;
|
||||
import com.orion.ops.module.asset.service.HostTerminalService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -36,7 +35,7 @@ public class HostTerminalController {
|
||||
@GetMapping("/access")
|
||||
@Operation(summary = "获取主机终端 accessToken")
|
||||
@PreAuthorize("@ss.hasPermission('asset:host-terminal:access')")
|
||||
public HostTerminalAccessVO getHostTerminalAccessToken() {
|
||||
public String getHostTerminalAccessToken() {
|
||||
return hostTerminalService.getHostTerminalAccessToken();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
package com.orion.ops.module.asset.entity.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 主机终端访问 响应对象
|
||||
*
|
||||
* @author Jiahang Li
|
||||
* @version 1.0.0
|
||||
* @since 2024/1/4 15:42
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Schema(name = "HostTerminalAccessVO", description = "主机终端访问 响应对象")
|
||||
public class HostTerminalAccessVO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Schema(description = "accessToken")
|
||||
private String accessToken;
|
||||
|
||||
@Schema(description = "session 起始量")
|
||||
private String sessionInitial;
|
||||
|
||||
}
|
||||
@@ -4,7 +4,6 @@ import com.orion.net.host.SessionStore;
|
||||
import com.orion.ops.module.asset.entity.domain.HostDO;
|
||||
import com.orion.ops.module.asset.entity.dto.HostTerminalAccessDTO;
|
||||
import com.orion.ops.module.asset.entity.dto.HostTerminalConnectDTO;
|
||||
import com.orion.ops.module.asset.entity.vo.HostTerminalAccessVO;
|
||||
|
||||
/**
|
||||
* 主机终端服务
|
||||
@@ -18,9 +17,9 @@ public interface HostTerminalService {
|
||||
/**
|
||||
* 获取主机终端访问 accessToken
|
||||
*
|
||||
* @return session
|
||||
* @return accessToken
|
||||
*/
|
||||
HostTerminalAccessVO getHostTerminalAccessToken();
|
||||
String getHostTerminalAccessToken();
|
||||
|
||||
/**
|
||||
* 通过 accessToken 获取主机终端访问信息
|
||||
|
||||
@@ -22,7 +22,6 @@ import com.orion.ops.module.asset.entity.domain.HostIdentityDO;
|
||||
import com.orion.ops.module.asset.entity.domain.HostKeyDO;
|
||||
import com.orion.ops.module.asset.entity.dto.HostTerminalAccessDTO;
|
||||
import com.orion.ops.module.asset.entity.dto.HostTerminalConnectDTO;
|
||||
import com.orion.ops.module.asset.entity.vo.HostTerminalAccessVO;
|
||||
import com.orion.ops.module.asset.enums.HostConfigTypeEnum;
|
||||
import com.orion.ops.module.asset.enums.HostExtraItemEnum;
|
||||
import com.orion.ops.module.asset.enums.HostExtraSshAuthTypeEnum;
|
||||
@@ -83,7 +82,7 @@ public class HostTerminalServiceImpl implements HostTerminalService {
|
||||
private SystemUserApi systemUserApi;
|
||||
|
||||
@Override
|
||||
public HostTerminalAccessVO getHostTerminalAccessToken() {
|
||||
public String getHostTerminalAccessToken() {
|
||||
LoginUser user = SecurityUtils.getLoginUser();
|
||||
log.info("HostConnectService.getHostAccessToken userId: {}", user.getId());
|
||||
String accessToken = UUIds.random19();
|
||||
@@ -94,11 +93,7 @@ public class HostTerminalServiceImpl implements HostTerminalService {
|
||||
// 设置 access 缓存
|
||||
String key = HostTerminalCacheKeyDefine.HOST_TERMINAL_ACCESS.format(accessToken);
|
||||
RedisStrings.setJson(key, HostTerminalCacheKeyDefine.HOST_TERMINAL_ACCESS, access);
|
||||
return HostTerminalAccessVO.builder()
|
||||
.accessToken(accessToken)
|
||||
// 32 进制的 uuid 作为起始量
|
||||
.sessionInitial(Long.toString(UUIds.random15Long(), 32))
|
||||
.build();
|
||||
return accessToken;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user