Merge pull request #9 from 1ch0/master

fix: store mongodb password incorrectly
This commit is contained in:
may-fly
2022-08-26 10:20:12 +08:00
committed by GitHub
2 changed files with 10 additions and 5 deletions

View File

@@ -9,6 +9,7 @@ import (
"mayfly-go/pkg/ctx"
"mayfly-go/pkg/ginx"
"mayfly-go/pkg/utils"
"regexp"
"strconv"
"github.com/gin-gonic/gin"
@@ -34,6 +35,9 @@ func (m *Mongo) Save(rc *ctx.ReqCtx) {
form := &form.Mongo{}
ginx.BindJsonAndValid(rc.GinCtx, form)
mongo := new(entity.Mongo)
utils.Copy(mongo, form)
// 密码脱敏记录日志
form.Uri = func(str string) string {
reg := regexp.MustCompile(`(^mongodb://.+?:)(.+)(@.+$)`)
@@ -41,9 +45,6 @@ func (m *Mongo) Save(rc *ctx.ReqCtx) {
}(form.Uri)
rc.ReqParam = form
mongo := new(entity.Mongo)
utils.Copy(mongo, form)
mongo.SetBaseInfo(rc.LoginAccount)
m.MongoApp.Save(mongo)
}

View File

@@ -13,6 +13,7 @@ import (
"mayfly-go/pkg/model"
"mayfly-go/pkg/utils"
"net"
"regexp"
"time"
"go.mongodb.org/mongo-driver/mongo"
@@ -95,7 +96,7 @@ func (d *mongoAppImpl) GetMongoCli(id uint64) *mongo.Client {
// -----------------------------------------------------------
//mongo客户端连接缓存指定时间内没有访问则会被关闭
// mongo客户端连接缓存指定时间内没有访问则会被关闭
var mongoCliCache = cache.NewTimedCache(constant.MongoConnExpireTime, 5*time.Second).
WithUpdateAccessTime(true).
OnEvicted(func(key interface{}, value interface{}) {
@@ -177,7 +178,10 @@ func connect(me *entity.Mongo) (*MongoInstance, error) {
return nil, err
}
global.Log.Infof("连接mongo: %s", me.Uri)
global.Log.Infof("连接mongo: %s", func(str string) string {
reg := regexp.MustCompile(`(^mongodb://.+?:)(.+)(@.+$)`)
return reg.ReplaceAllString(str, `${1}****${3}`)
}(me.Uri))
mongoInstance.Cli = client
return mongoInstance, err
}