mirror of
https://github.com/TeaOSLab/EdgeAPI.git
synced 2025-11-03 06:40:26 +08:00
[SSH认证]记录创建的管理员ID
This commit is contained in:
@@ -73,8 +73,9 @@ func (this *NodeGrantDAO) FindNodeGrantName(id uint32) (string, error) {
|
||||
}
|
||||
|
||||
// 创建认证信息
|
||||
func (this *NodeGrantDAO) CreateGrant(name string, method string, username string, password string, privateKey string, description string, nodeId int64) (grantId int64, err error) {
|
||||
func (this *NodeGrantDAO) CreateGrant(adminId int64, name string, method string, username string, password string, privateKey string, description string, nodeId int64) (grantId int64, err error) {
|
||||
op := NewNodeGrantOperator()
|
||||
op.AdminId = adminId
|
||||
op.Name = name
|
||||
op.Method = method
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package models
|
||||
// 节点授权
|
||||
type NodeGrant struct {
|
||||
Id uint32 `field:"id"` // ID
|
||||
AdminId uint32 `field:"adminId"` // 管理员ID
|
||||
Name string `field:"name"` // 名称
|
||||
Method string `field:"method"` // 登录方式
|
||||
Username string `field:"username"` // 用户名
|
||||
@@ -17,6 +18,7 @@ type NodeGrant struct {
|
||||
|
||||
type NodeGrantOperator struct {
|
||||
Id interface{} // ID
|
||||
AdminId interface{} // 管理员ID
|
||||
Name interface{} // 名称
|
||||
Method interface{} // 登录方式
|
||||
Username interface{} // 用户名
|
||||
|
||||
@@ -13,12 +13,12 @@ type NodeGrantService struct {
|
||||
}
|
||||
|
||||
func (this *NodeGrantService) CreateNodeGrant(ctx context.Context, req *pb.CreateNodeGrantRequest) (*pb.CreateNodeGrantResponse, error) {
|
||||
_, _, err := rpcutils.ValidateRequest(ctx, rpcutils.UserTypeAdmin)
|
||||
adminId, err := this.ValidateAdmin(ctx, 0)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
grantId, err := models.SharedNodeGrantDAO.CreateGrant(req.Name, req.Method, req.Username, req.Password, req.PrivateKey, req.Description, req.NodeId)
|
||||
grantId, err := models.SharedNodeGrantDAO.CreateGrant(adminId, req.Name, req.Method, req.Username, req.Password, req.PrivateKey, req.Description, req.NodeId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -81,5 +81,11 @@ func upgradeV0_0_3(db *dbs.DB) error {
|
||||
return err
|
||||
}
|
||||
|
||||
// 升级edgeNodeGrants
|
||||
_, err = db.Exec("UPDATE edgeNodeGrants SET adminId=? WHERE adminId=0", adminId)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user