mirror of
				https://github.com/TeaOSLab/EdgeAdmin.git
				synced 2025-11-04 21:50:28 +08:00 
			
		
		
		
	当证书被API节点或者用户节点使用时不允许删除/规范命名
This commit is contained in:
		@@ -16,7 +16,7 @@ func (this *DeleteAction) RunPost(params struct {
 | 
			
		||||
	// 创建日志
 | 
			
		||||
	defer this.CreateLog(oplogs.LevelInfo, "删除SSL证书 %d", params.CertId)
 | 
			
		||||
 | 
			
		||||
	// 是否正在被使用
 | 
			
		||||
	// 是否正在被服务使用
 | 
			
		||||
	countResp, err := this.RPC().ServerRPC().CountAllEnabledServersWithSSLCertId(this.AdminContext(), &pb.CountAllEnabledServersWithSSLCertIdRequest{SslCertId: params.CertId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
@@ -26,6 +26,26 @@ func (this *DeleteAction) RunPost(params struct {
 | 
			
		||||
		this.Fail("此证书正在被某些服务引用,请先修改服务后再删除。")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 是否正在被API节点使用
 | 
			
		||||
	countResp, err = this.RPC().APINodeRPC().CountAllEnabledAPINodesWithSSLCertId(this.AdminContext(), &pb.CountAllEnabledAPINodesWithSSLCertIdRequest{SslCertId: params.CertId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if countResp.Count > 0 {
 | 
			
		||||
		this.Fail("此证书正在被某些API节点引用,请先修改API节点后再删除")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 是否正在被用户节点使用
 | 
			
		||||
	countResp, err = this.RPC().UserNodeRPC().CountAllEnabledUserNodesWithSSLCertId(this.AdminContext(), &pb.CountAllEnabledUserNodesWithSSLCertIdRequest{SslCertId: params.CertId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	if countResp.Count > 0 {
 | 
			
		||||
		this.Fail("此证书正在被某些用户节点引用,请先修改用户节点后再删除")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, err = this.RPC().SSLCertRPC().DeleteSSLCert(this.AdminContext(), &pb.DeleteSSLCertRequest{SslCertId: params.CertId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@ func (this *DeleteAction) RunPost(params struct {
 | 
			
		||||
}) {
 | 
			
		||||
	// TODO 检查权限
 | 
			
		||||
 | 
			
		||||
	_, err := this.RPC().UserNodeRPC().DeleteUserNode(this.AdminContext(), &pb.DeleteUserNodeRequest{NodeId: params.NodeId})
 | 
			
		||||
	_, err := this.RPC().UserNodeRPC().DeleteUserNode(this.AdminContext(), &pb.DeleteUserNodeRequest{UserNodeId: params.NodeId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
@@ -46,7 +46,7 @@ func (this *IndexAction) RunGet(params struct{}) {
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		for _, node := range nodesResp.Nodes {
 | 
			
		||||
		for _, node := range nodesResp.UserNodes {
 | 
			
		||||
			// 状态
 | 
			
		||||
			status := &nodeconfigs.NodeStatus{}
 | 
			
		||||
			if len(node.StatusJSON) > 0 {
 | 
			
		||||
 
 | 
			
		||||
@@ -137,7 +137,7 @@ func (this *CreatePopupAction) RunPost(params struct {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 创建日志
 | 
			
		||||
	defer this.CreateLog(oplogs.LevelInfo, "创建用户节点 %d", createResp.NodeId)
 | 
			
		||||
	defer this.CreateLog(oplogs.LevelInfo, "创建用户节点 %d", createResp.UserNodeId)
 | 
			
		||||
 | 
			
		||||
	this.Success()
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -20,12 +20,12 @@ func (this *IndexAction) Init() {
 | 
			
		||||
func (this *IndexAction) RunGet(params struct {
 | 
			
		||||
	NodeId int64
 | 
			
		||||
}) {
 | 
			
		||||
	nodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{NodeId: params.NodeId})
 | 
			
		||||
	nodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{UserNodeId: params.NodeId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	node := nodeResp.Node
 | 
			
		||||
	node := nodeResp.UserNode
 | 
			
		||||
	if node == nil {
 | 
			
		||||
		this.NotFound("userNode", params.NodeId)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
@@ -19,12 +19,12 @@ func (this *InstallAction) RunGet(params struct {
 | 
			
		||||
	NodeId int64
 | 
			
		||||
}) {
 | 
			
		||||
	// 用户节点信息
 | 
			
		||||
	nodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{NodeId: params.NodeId})
 | 
			
		||||
	nodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{UserNodeId: params.NodeId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	node := nodeResp.Node
 | 
			
		||||
	node := nodeResp.UserNode
 | 
			
		||||
	if node == nil {
 | 
			
		||||
		this.NotFound("userNode", params.NodeId)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
@@ -31,12 +31,12 @@ func (this *LogsAction) RunGet(params struct {
 | 
			
		||||
	this.Data["keyword"] = params.Keyword
 | 
			
		||||
	this.Data["level"] = params.Level
 | 
			
		||||
 | 
			
		||||
	userNodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{NodeId: params.NodeId})
 | 
			
		||||
	userNodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{UserNodeId: params.NodeId})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	userNode := userNodeResp.Node
 | 
			
		||||
	userNode := userNodeResp.UserNode
 | 
			
		||||
	if userNode == nil {
 | 
			
		||||
		this.NotFound("userNode", params.NodeId)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
@@ -23,13 +23,13 @@ func (this *UpdateAction) RunGet(params struct {
 | 
			
		||||
	NodeId int64
 | 
			
		||||
}) {
 | 
			
		||||
	nodeResp, err := this.RPC().UserNodeRPC().FindEnabledUserNode(this.AdminContext(), &pb.FindEnabledUserNodeRequest{
 | 
			
		||||
		NodeId: params.NodeId,
 | 
			
		||||
		UserNodeId: params.NodeId,
 | 
			
		||||
	})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		this.ErrorPage(err)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	node := nodeResp.Node
 | 
			
		||||
	node := nodeResp.UserNode
 | 
			
		||||
	if node == nil {
 | 
			
		||||
		this.WriteString("要操作的节点不存在")
 | 
			
		||||
		return
 | 
			
		||||
@@ -220,7 +220,7 @@ func (this *UpdateAction) RunPost(params struct {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	_, err = this.RPC().UserNodeRPC().UpdateUserNode(this.AdminContext(), &pb.UpdateUserNodeRequest{
 | 
			
		||||
		NodeId:          params.NodeId,
 | 
			
		||||
		UserNodeId:      params.NodeId,
 | 
			
		||||
		Name:            params.Name,
 | 
			
		||||
		Description:     params.Description,
 | 
			
		||||
		HttpJSON:        httpJSON,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,7 @@
 | 
			
		||||
		<tr>
 | 
			
		||||
			<td>进程监听端口 *</td>
 | 
			
		||||
			<td>
 | 
			
		||||
				<network-addresses-box :v-name="'listensJSON'" :v-server-type="'httpWeb'" @change="changeListens"></network-addresses-box>
 | 
			
		||||
				<network-addresses-box :v-name="'listensJSON'" :v-server-type="'httpWeb'" @change="changeListens" :v-from="'userNode'"></network-addresses-box>
 | 
			
		||||
				<p class="comment">用户节点进程监听的网络端口。</p>
 | 
			
		||||
			</td>
 | 
			
		||||
		</tr>
 | 
			
		||||
 
 | 
			
		||||
@@ -15,7 +15,7 @@
 | 
			
		||||
		<tr>
 | 
			
		||||
			<td>进程监听端口 *</td>
 | 
			
		||||
			<td>
 | 
			
		||||
				<network-addresses-box :v-name="'listensJSON'" :v-server-type="'httpWeb'" :v-addresses="node.listens" @change="changeListens"></network-addresses-box>
 | 
			
		||||
				<network-addresses-box :v-name="'listensJSON'" :v-server-type="'httpWeb'" :v-addresses="node.listens" :v-from="'userNode'" @change="changeListens"></network-addresses-box>
 | 
			
		||||
				<p class="comment">API节点进程监听的网络端口。</p>
 | 
			
		||||
			</td>
 | 
			
		||||
		</tr>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user