From ff1c2949634c24af770b428cb384801dbf051152 Mon Sep 17 00:00:00 2001 From: Jo Date: Fri, 29 Jul 2022 08:17:07 +0000 Subject: [PATCH] AzureAD: Don't copy claims around (#52950) --- pkg/login/social/azuread_oauth.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/login/social/azuread_oauth.go b/pkg/login/social/azuread_oauth.go index 39687294a65..ecf4c70b793 100644 --- a/pkg/login/social/azuread_oauth.go +++ b/pkg/login/social/azuread_oauth.go @@ -65,12 +65,12 @@ func (s *SocialAzureAD) UserInfo(client *http.Client, token *oauth2.Token) (*Bas return nil, fmt.Errorf("error getting claims from id token: %w", err) } - email := extractEmail(claims) + email := claims.extractEmail() if email == "" { return nil, errors.New("error getting user info: no email found in access token") } - role := extractRole(claims, s.autoAssignOrgRole, s.roleAttributeStrict) + role := claims.extractRole(s.autoAssignOrgRole, s.roleAttributeStrict) if role == "" { return nil, errors.New("user does not have a valid role") } @@ -112,7 +112,7 @@ func (s *SocialAzureAD) IsGroupMember(groups []string) bool { return false } -func extractEmail(claims azureClaims) string { +func (claims *azureClaims) extractEmail() string { if claims.Email == "" { if claims.PreferredUsername != "" { return claims.PreferredUsername @@ -122,7 +122,7 @@ func extractEmail(claims azureClaims) string { return claims.Email } -func extractRole(claims azureClaims, autoAssignRole string, strictMode bool) models.RoleType { +func (claims *azureClaims) extractRole(autoAssignRole string, strictMode bool) models.RoleType { if len(claims.Roles) == 0 { if strictMode { return models.RoleType("")