diff --git a/config/config.yaml b/config/config.yaml index 3190bb34f..1c39886e0 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -706,6 +706,7 @@ demo: superCode: 666666 #超级验证码,建议修改掉,收不到短信验证码时可以用此替代 # second codeTTL: 60 + useSuperCode: true mail: #仅支持qq邮箱,具体操作参考 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 必须修改 title: "openIM" senderMail: "765567899@qq.com" diff --git a/internal/demo/register/reset_password.go b/internal/demo/register/reset_password.go index dc5f9a6ca..6481a892e 100644 --- a/internal/demo/register/reset_password.go +++ b/internal/demo/register/reset_password.go @@ -34,7 +34,8 @@ func ResetPassword(c *gin.Context) { } else { account = req.PhoneNumber } - if req.VerificationCode != config.Config.Demo.SuperCode { + + if (config.Config.Demo.UseSuperCode && req.VerificationCode != config.Config.Demo.SuperCode) || !config.Config.Demo.UseSuperCode { accountKey := req.AreaCode + account + "_" + constant.VerificationCodeForResetSuffix v, err := db.DB.GetAccountCode(accountKey) if err != nil || v != req.VerificationCode { diff --git a/internal/demo/register/set_password.go b/internal/demo/register/set_password.go index c2498e653..19831399b 100644 --- a/internal/demo/register/set_password.go +++ b/internal/demo/register/set_password.go @@ -46,7 +46,7 @@ func SetPassword(c *gin.Context) { if params.Nickname == "" { params.Nickname = account } - if params.VerificationCode != config.Config.Demo.SuperCode { + if (config.Config.Demo.UseSuperCode && params.VerificationCode != config.Config.Demo.SuperCode) || !config.Config.Demo.UseSuperCode { accountKey := params.AreaCode + account + "_" + constant.VerificationCodeForRegisterSuffix v, err := db.DB.GetAccountCode(accountKey) if err != nil || v != params.VerificationCode { diff --git a/internal/demo/register/verify.go b/internal/demo/register/verify.go index 7777e6ec7..137f319a3 100644 --- a/internal/demo/register/verify.go +++ b/internal/demo/register/verify.go @@ -40,7 +40,7 @@ func Verify(c *gin.Context) { account = params.AreaCode + params.PhoneNumber } - if params.VerificationCode == config.Config.Demo.SuperCode { + if config.Config.Demo.UseSuperCode && params.VerificationCode == config.Config.Demo.SuperCode { log.NewInfo(params.OperationID, "Super Code Verified successfully", account) data := make(map[string]interface{}) data["account"] = account diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index d092727ec..3ed175fe1 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -464,9 +464,10 @@ type config struct { VerificationCodeTemplateCode string `yaml:"verificationCodeTemplateCode"` Enable bool `yaml:"enable"` } - SuperCode string `yaml:"superCode"` - CodeTTL int `yaml:"codeTTL"` - Mail struct { + SuperCode string `yaml:"superCode"` + CodeTTL int `yaml:"codeTTL"` + UseSuperCode bool `yaml:"useSuperCode"` + Mail struct { Title string `yaml:"title"` SenderMail string `yaml:"senderMail"` SenderAuthorizationCode string `yaml:"senderAuthorizationCode"`