Skip to content

Commit b1b43a4

Browse files
committed
fix: resetting the keys
1 parent f969495 commit b1b43a4

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

server/resolvers/update_env.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,18 +53,28 @@ func UpdateEnvResolver(ctx context.Context, params model.UpdateEnvInput) (*model
5353
}
5454

5555
if isJWTUpdated {
56+
// use to reset when type is changed from rsa, edsa -> hmac or vice a versa
57+
defaultSecret := ""
58+
defaultPublicKey := ""
59+
defaultPrivateKey := ""
5660
// check if jwt secret is provided
5761
if crypto.IsHMACA(algo) {
5862
if params.JwtSecret == nil {
5963
return res, fmt.Errorf("jwt secret is required for HMAC algorithm")
6064
}
65+
66+
// reset public key and private key
67+
params.JwtPrivateKey = &defaultPrivateKey
68+
params.JwtPublicKey = &defaultPublicKey
6169
}
6270

6371
if crypto.IsRSA(algo) {
6472
if params.JwtPrivateKey == nil || params.JwtPublicKey == nil {
6573
return res, fmt.Errorf("jwt private and public key is required for RSA (PKCS1) / ECDSA algorithm")
6674
}
6775

76+
// reset the jwt secret
77+
params.JwtSecret = &defaultSecret
6878
_, err = crypto.ParseRsaPrivateKeyFromPemStr(*params.JwtPrivateKey)
6979
if err != nil {
7080
return res, err
@@ -81,6 +91,8 @@ func UpdateEnvResolver(ctx context.Context, params model.UpdateEnvInput) (*model
8191
return res, fmt.Errorf("jwt private and public key is required for RSA (PKCS1) / ECDSA algorithm")
8292
}
8393

94+
// reset the jwt secret
95+
params.JwtSecret = &defaultSecret
8496
_, err = crypto.ParseEcdsaPrivateKeyFromPemStr(*params.JwtPrivateKey)
8597
if err != nil {
8698
return res, err

0 commit comments

Comments
 (0)