Skip to content

Commit

Permalink
Merge remote-tracking branch 'github-bk-bcs/master'
Browse files Browse the repository at this point in the history
* github-bk-bcs/master:
  fix: 修复kv敏感信息是token类型时校验错误 (#3487)
  • Loading branch information
wenxinlee2015 committed Sep 3, 2024
2 parents 0c033da + a399d73 commit dc83bfc
Showing 1 changed file with 3 additions and 28 deletions.
31 changes: 3 additions & 28 deletions bcs-services/bcs-bscp/cmd/config-server/service/kv.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ import (
"errors"
"fmt"
"reflect"
"regexp"
"strings"
"sync"

Expand Down Expand Up @@ -764,36 +763,12 @@ func verifySecretVaule(kit *kit.Kit, secretType, value string) error {
if value == "敏感信息无法导出" {
return errors.New(i18n.T(kit, `please set a password`))
}
switch secretType {
case string(table.SecretTypeCertificate):
if !validateCertificate(value) {
return errors.New(i18n.T(kit, `the certificate format is incorrect, only X.509 format is supported`))
}
case string(table.SecretTypeToken):
if !validateToken(value) {
return errors.New(i18n.T(kit, `the access token format is incorrect. Currently only OAtuh 2.0 and jwt formats
are supported. The length is 32-512 characters, including uppercase and lowercase letters and numbers`))
}
default:
return nil
}

return nil
}

// 验证令牌
func validateToken(token string) bool {
// 令牌长度必须在 32 到 512 个字符之间,并且只包含大小写字母和数字
if len(token) < 32 || len(token) > 512 {
return false
}

matched, err := regexp.MatchString(`^[a-zA-Z0-9]+$`, token)
if err != nil {
return false
if secretType == string(table.SecretTypeCertificate) && !validateCertificate(value) {
return errors.New(i18n.T(kit, `the certificate format is incorrect, only X.509 format is supported`))
}

return matched
return nil
}

// 验证证书
Expand Down

0 comments on commit dc83bfc

Please sign in to comment.