From efac41f39298b31b31868b5ad18310a1ea07d68e Mon Sep 17 00:00:00 2001 From: Echo Cheng Date: Thu, 25 Aug 2022 17:58:07 +0800 Subject: [PATCH] Perf: hide mongodb passwords when printing logs --- server/internal/devops/api/mongo.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/internal/devops/api/mongo.go b/server/internal/devops/api/mongo.go index b3eeff32..d1af8471 100644 --- a/server/internal/devops/api/mongo.go +++ b/server/internal/devops/api/mongo.go @@ -34,6 +34,11 @@ func (m *Mongo) Save(rc *ctx.ReqCtx) { form := &form.Mongo{} ginx.BindJsonAndValid(rc.GinCtx, form) + // 密码脱敏记录日志 + form.Uri = func(str string) string { + reg := regexp.MustCompile(`(^mongodb://.+?:)(.+)(@.+$)`) + return reg.ReplaceAllString(str, `${1}****${3}`) + }(form.Uri) rc.ReqParam = form mongo := new(entity.Mongo)