Skip to content

Commit 239ca31

Browse files
committed
handle split[1] for extracting token from email
1 parent 3981578 commit 239ca31

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

pkg/auth/user/UserService.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1244,7 +1244,11 @@ func (impl *UserServiceImpl) GetUserByToken(context context.Context, token strin
12441244
}
12451245

12461246
func (impl *UserServiceImpl) CheckIfTokenIsValid(email string, version string) error {
1247-
tokenName := userHelper.ExtractTokenNameFromEmail(email)
1247+
tokenName, err := userHelper.ExtractTokenNameFromEmail(email)
1248+
if err != nil {
1249+
impl.logger.Errorw("error in extracting token name from email", "email", email, "error", err)
1250+
return err
1251+
}
12481252
embeddedTokenVersion, _ := strconv.Atoi(version)
12491253
isProvidedTokenValid, err := impl.userRepository.CheckIfTokenExistsByTokenNameAndVersion(tokenName, embeddedTokenVersion)
12501254
if err != nil || !isProvidedTokenValid {

pkg/auth/user/helper/helper.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package helper
1818

1919
import (
20+
"errors"
2021
"fmt"
2122
bean2 "github.com/devtron-labs/devtron/api/bean"
2223
"github.com/devtron-labs/devtron/internal/util"
@@ -65,8 +66,12 @@ func CheckIfUserIdsExists(userIds []int32) error {
6566
return nil
6667
}
6768

68-
func ExtractTokenNameFromEmail(email string) string {
69-
return strings.Split(email, ":")[1]
69+
func ExtractTokenNameFromEmail(email string) (string, error) {
70+
splitData := strings.Split(email, ":")
71+
if splitData == nil || len(splitData) != 2 {
72+
return "", errors.New("invalid apitoken format")
73+
}
74+
return splitData[1], nil
7075
}
7176

7277
func CreateErrorMessageForUserRoleGroups(restrictedGroups []bean2.RestrictedGroup) (string, string) {

0 commit comments

Comments
 (0)