git.iko.soy/typeable/oauth2-proxy
on master help sign in
Add groups to session too when creating session from token
commita392cc109880758c97fd899ad453b4ff7ea91026 authorAdrian Aneci <aneci@adobe.com> dateMon 7 Mar 2022, 18:54 (5 years ago) parent45ef848
2 files changed+7−4
CHANGELOG.md+1 pkg/apis/middleware/session.go+6−4
CHANGELOG.md+1
@@ -8,6 +8,7 @@
88
99## Changes since v7.2.1
1010
11+- [#1583](https://github.com/oauth2-proxy/oauth2-proxy/pull/1583) Add groups to session too when creating session from bearer token (@adriananeci)
1112- [#1418](https://github.com/oauth2-proxy/oauth2-proxy/pull/1418) Support for passing arbitrary query parameters through from `/oauth2/start` to the identity provider's login URL. Configuration settings control which parameters are passed by default and precisely which values can be overridden per-request (@ianroberts)
1213- [#1559](https://github.com/oauth2-proxy/oauth2-proxy/pull/1559) Introduce ProviderVerifier to clean up OIDC discovery code (@JoelSpeed)
1314- [#1561](https://github.com/oauth2-proxy/oauth2-proxy/pull/1561) Add ppc64le support (@mgiessing)
pkg/apis/middleware/session.go+6−4
@@ -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,