feat:ok
This commit is contained in:
@@ -23,12 +23,12 @@ var (
|
||||
|
||||
func New(token string) {
|
||||
JwtSecret = []byte(token)
|
||||
JwtSecretLen = len(env.MeshEnv.JwtSecretKey)
|
||||
JwtSecretLen = len(env.Runtime.JwtSecretKey)
|
||||
}
|
||||
|
||||
func GenerateTokenAes(id uint, identity, client, role string, owner any, extend map[string]string) (string, error) {
|
||||
if (JwtSecretLen == 16 || JwtSecretLen == 24 || JwtSecretLen == 32) == false {
|
||||
return "", errcode.ErrAuthSecret
|
||||
return "", errcode.ErrJWTSecretKey
|
||||
}
|
||||
expireTime := time.Now().Add(vars.JwtExpireDay)
|
||||
claims := types.JwtClaims{
|
||||
@@ -43,7 +43,7 @@ func GenerateTokenAes(id uint, identity, client, role string, owner any, extend
|
||||
|
||||
byte, err := json.Marshal(claims)
|
||||
if err != nil {
|
||||
return "", errcode.ErrJsonEncode
|
||||
return "", errcode.ErrJWTJsonEncode
|
||||
}
|
||||
|
||||
token, err := AesEncryptCBC(byte)
|
||||
@@ -59,7 +59,7 @@ func AesEncryptCBC(plan []byte) (string, error) {
|
||||
// NewCipher该函数限制了输入k的长度必须为16, 24或者32
|
||||
block, err := aes.NewCipher(JwtSecret)
|
||||
if err != nil {
|
||||
return "", errcode.ErrAuthSecret
|
||||
return "", errcode.ErrJWTSecretKey
|
||||
}
|
||||
// 获取秘钥块的长度
|
||||
blockSize := block.BlockSize()
|
||||
@@ -76,17 +76,17 @@ func AesEncryptCBC(plan []byte) (string, error) {
|
||||
|
||||
func AesDecryptCBC(cryted string) (b []byte, err error) {
|
||||
if (JwtSecretLen == 16 || JwtSecretLen == 24 || JwtSecretLen == 32) == false {
|
||||
return nil, errcode.ErrAuthSecret
|
||||
return nil, errcode.ErrJWTSecretKey
|
||||
}
|
||||
// 转成字节数组
|
||||
crytedByte, err := base64.StdEncoding.DecodeString(cryted)
|
||||
if err != nil {
|
||||
return nil, errcode.ErrBase64Decode
|
||||
return nil, errcode.ErrJWTBase64Decode
|
||||
}
|
||||
// 分组秘钥
|
||||
block, err := aes.NewCipher(JwtSecret)
|
||||
if err != nil {
|
||||
return nil, errcode.ErrAuthSecret
|
||||
return nil, errcode.ErrJWTSecretKey
|
||||
}
|
||||
// 获取秘钥块的长度
|
||||
blockSize := block.BlockSize()
|
||||
@@ -99,7 +99,7 @@ func AesDecryptCBC(cryted string) (b []byte, err error) {
|
||||
// 去补全码
|
||||
orig = PKCS7UnPadding(orig, blockSize)
|
||||
if orig == nil {
|
||||
return nil, errcode.ErrAuthParseFail
|
||||
return nil, errcode.ErrJWTAuthParseFail
|
||||
}
|
||||
return orig, nil
|
||||
}
|
||||
@@ -142,12 +142,12 @@ func ParseTokenAes(token string) (*types.JwtClaims, error) {
|
||||
var ac *types.JwtClaims
|
||||
err = json.Unmarshal(data, &ac)
|
||||
if err != nil {
|
||||
return nil, errcode.ErrAuthParseFail
|
||||
return nil, errcode.ErrJWTAuthParseFail
|
||||
}
|
||||
|
||||
expireTime := time.Now().Unix()
|
||||
if expireTime > ac.ExpiresAt {
|
||||
return nil, errcode.ErrAuthExpire
|
||||
return nil, errcode.ErrJWTAuthExpire
|
||||
}
|
||||
|
||||
return ac, nil
|
||||
|
||||
Reference in New Issue
Block a user