fix: correct parentUser lookup for OIDC auto expiration (#14154)

fixes #14026

This is a regression from #13884
This commit is contained in:
Harshavardhana
2022-01-22 16:36:11 -08:00
committed by GitHub
parent 5f36167f1a
commit f6d13f57bb
3 changed files with 16 additions and 17 deletions

View File

@@ -1457,7 +1457,20 @@ func (store *IAMStoreSys) GetAllParentUsers() []string {
res := set.NewStringSet()
for _, cred := range cache.iamUsersMap {
if cred.IsServiceAccount() || cred.IsTemp() {
res.Add(cred.ParentUser)
parentUser := cred.ParentUser
if cred.SessionToken != "" {
claims, err := getClaimsFromToken(cred.SessionToken)
if err != nil {
continue
}
if v, ok := claims[subClaim]; ok {
subFromToken, ok := v.(string)
if ok {
parentUser = subFromToken
}
}
}
res.Add(parentUser)
}
}