@@ -20,10 +20,11 @@ type VerifyFunc func(ctx context.Context, token string) (*oidc.IDToken, error)
2020func CreateTokenToSessionFunc(verify VerifyFunc) TokenToSessionFunc {
2121 return func(ctx context.Context, token string) (*sessionsapi.SessionState, error) {
2222 var claims struct {
23− Subject string `json:"sub"`
24− Email string `json:"email"`
25− Verified *bool `json:"email_verified"`
26− PreferredUsername string `json:"preferred_username"`
23+ Subject string `json:"sub"`
24+ Email string `json:"email"`
25+ Verified *bool `json:"email_verified"`
26+ PreferredUsername string `json:"preferred_username"`
27+ Groups []string `json:"groups"`
2728 }
2829
2930 idToken, err := verify(ctx, token)
@@ -46,6 +47,7 @@ func CreateTokenToSessionFunc(verify VerifyFunc) TokenToSessionFunc {
4647 newSession := &sessionsapi.SessionState{
4748 Email: claims.Email,
4849 User: claims.Subject,
50+ Groups: claims.Groups,
4951 PreferredUsername: claims.PreferredUsername,
5052 AccessToken: token,
5153 IDToken: token,