@@ -20,16 +20,24 @@ type OIDCProvider struct {
2020 SkipNonce bool
2121}
2222
23+const oidcDefaultScope = "openid email profile"
24+
2325// NewOIDCProvider initiates a new OIDCProvider
2426func NewOIDCProvider(p *ProviderData, opts options.OIDCOptions) *OIDCProvider {
25− p.setProviderDefaults(providerDefaults{
27+ oidcProviderDefaults := providerDefaults{
2628 name: "OpenID Connect",
2729 loginURL: nil,
2830 redeemURL: nil,
2931 profileURL: nil,
3032 validateURL: nil,
31− scope: "",
32− })
33+ scope: oidcDefaultScope,
34+ }
35+
36+ if len(p.AllowedGroups) > 0 {
37+ oidcProviderDefaults.scope += " groups"
38+ }
39+
40+ p.setProviderDefaults(oidcProviderDefaults)
3341 p.getAuthorizationHeaderFunc = makeOIDCHeader
3442
3543 return &OIDCProvider{