Make more fields in UpstreamOIDCProvider optional.

Signed-off-by: Matt Moyer <moyerm@vmware.com>
This commit is contained in:
Matt Moyer 2020-11-13 15:28:37 -06:00
parent d5ee925e62
commit d3d8ef44a0
No known key found for this signature in database
GPG Key ID: EAE88AD172C5AE2D
8 changed files with 24 additions and 32 deletions

View File

@ -16,7 +16,7 @@ const (
// PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state. // PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state.
PhaseReady UpstreamOIDCProviderPhase = "Ready" PhaseReady UpstreamOIDCProviderPhase = "Ready"
// PhaseErorr is the phase for an UpstreamOIDCProvider in an unhealthy state. // PhaseError is the phase for an UpstreamOIDCProvider in an unhealthy state.
PhaseError UpstreamOIDCProviderPhase = "Error" PhaseError UpstreamOIDCProviderPhase = "Error"
) )
@ -40,6 +40,7 @@ type UpstreamOIDCProviderStatus struct {
type OIDCAuthorizationConfig struct { type OIDCAuthorizationConfig struct {
// AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization // AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization
// request flow with an OIDC identity provider. By default only the "openid" scope will be requested. // request flow with an OIDC identity provider. By default only the "openid" scope will be requested.
// +optional
AdditionalScopes []string `json:"additionalScopes"` AdditionalScopes []string `json:"additionalScopes"`
} }
@ -47,10 +48,12 @@ type OIDCAuthorizationConfig struct {
type OIDCClaims struct { type OIDCClaims struct {
// Groups provides the name of the token claim that will be used to ascertain the groups to which // Groups provides the name of the token claim that will be used to ascertain the groups to which
// an identity belongs. // an identity belongs.
// +optional
Groups string `json:"groups"` Groups string `json:"groups"`
// Username provides the name of the token claim that will be used to ascertain an identity's // Username provides the name of the token claim that will be used to ascertain an identity's
// username. // username.
// +optional
Username string `json:"username"` Username string `json:"username"`
} }
@ -74,10 +77,12 @@ type UpstreamOIDCProviderSpec struct {
// AuthorizationConfig holds information about how to form the OAuth2 authorization request // AuthorizationConfig holds information about how to form the OAuth2 authorization request
// parameters to be used with this OIDC identity provider. // parameters to be used with this OIDC identity provider.
// +optional
AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"` AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"`
// Claims provides the names of token claims that will be used when inspecting an identity from // Claims provides the names of token claims that will be used when inspecting an identity from
// this OIDC identity provider. // this OIDC identity provider.
// +optional
Claims OIDCClaims `json:"claims"` Claims OIDCClaims `json:"claims"`
// OIDCClient contains OIDC client information to be used used with this OIDC identity // OIDCClient contains OIDC client information to be used used with this OIDC identity

View File

@ -64,8 +64,6 @@ spec:
items: items:
type: string type: string
type: array type: array
required:
- additionalScopes
type: object type: object
claims: claims:
description: Claims provides the names of token claims that will be description: Claims provides the names of token claims that will be
@ -79,9 +77,6 @@ spec:
description: Username provides the name of the token claim that description: Username provides the name of the token claim that
will be used to ascertain an identity's username. will be used to ascertain an identity's username.
type: string type: string
required:
- groups
- username
type: object type: object
client: client:
description: OIDCClient contains OIDC client information to be used description: OIDCClient contains OIDC client information to be used
@ -104,8 +99,6 @@ spec:
pattern: ^https:// pattern: ^https://
type: string type: string
required: required:
- authorizationConfig
- claims
- client - client
- issuer - issuer
type: object type: object

View File

@ -16,7 +16,7 @@ const (
// PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state. // PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state.
PhaseReady UpstreamOIDCProviderPhase = "Ready" PhaseReady UpstreamOIDCProviderPhase = "Ready"
// PhaseErorr is the phase for an UpstreamOIDCProvider in an unhealthy state. // PhaseError is the phase for an UpstreamOIDCProvider in an unhealthy state.
PhaseError UpstreamOIDCProviderPhase = "Error" PhaseError UpstreamOIDCProviderPhase = "Error"
) )
@ -40,6 +40,7 @@ type UpstreamOIDCProviderStatus struct {
type OIDCAuthorizationConfig struct { type OIDCAuthorizationConfig struct {
// AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization // AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization
// request flow with an OIDC identity provider. By default only the "openid" scope will be requested. // request flow with an OIDC identity provider. By default only the "openid" scope will be requested.
// +optional
AdditionalScopes []string `json:"additionalScopes"` AdditionalScopes []string `json:"additionalScopes"`
} }
@ -47,10 +48,12 @@ type OIDCAuthorizationConfig struct {
type OIDCClaims struct { type OIDCClaims struct {
// Groups provides the name of the token claim that will be used to ascertain the groups to which // Groups provides the name of the token claim that will be used to ascertain the groups to which
// an identity belongs. // an identity belongs.
// +optional
Groups string `json:"groups"` Groups string `json:"groups"`
// Username provides the name of the token claim that will be used to ascertain an identity's // Username provides the name of the token claim that will be used to ascertain an identity's
// username. // username.
// +optional
Username string `json:"username"` Username string `json:"username"`
} }
@ -74,10 +77,12 @@ type UpstreamOIDCProviderSpec struct {
// AuthorizationConfig holds information about how to form the OAuth2 authorization request // AuthorizationConfig holds information about how to form the OAuth2 authorization request
// parameters to be used with this OIDC identity provider. // parameters to be used with this OIDC identity provider.
// +optional
AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"` AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"`
// Claims provides the names of token claims that will be used when inspecting an identity from // Claims provides the names of token claims that will be used when inspecting an identity from
// this OIDC identity provider. // this OIDC identity provider.
// +optional
Claims OIDCClaims `json:"claims"` Claims OIDCClaims `json:"claims"`
// OIDCClient contains OIDC client information to be used used with this OIDC identity // OIDCClient contains OIDC client information to be used used with this OIDC identity

View File

@ -64,8 +64,6 @@ spec:
items: items:
type: string type: string
type: array type: array
required:
- additionalScopes
type: object type: object
claims: claims:
description: Claims provides the names of token claims that will be description: Claims provides the names of token claims that will be
@ -79,9 +77,6 @@ spec:
description: Username provides the name of the token claim that description: Username provides the name of the token claim that
will be used to ascertain an identity's username. will be used to ascertain an identity's username.
type: string type: string
required:
- groups
- username
type: object type: object
client: client:
description: OIDCClient contains OIDC client information to be used description: OIDCClient contains OIDC client information to be used
@ -104,8 +99,6 @@ spec:
pattern: ^https:// pattern: ^https://
type: string type: string
required: required:
- authorizationConfig
- claims
- client - client
- issuer - issuer
type: object type: object

View File

@ -16,7 +16,7 @@ const (
// PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state. // PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state.
PhaseReady UpstreamOIDCProviderPhase = "Ready" PhaseReady UpstreamOIDCProviderPhase = "Ready"
// PhaseErorr is the phase for an UpstreamOIDCProvider in an unhealthy state. // PhaseError is the phase for an UpstreamOIDCProvider in an unhealthy state.
PhaseError UpstreamOIDCProviderPhase = "Error" PhaseError UpstreamOIDCProviderPhase = "Error"
) )
@ -40,6 +40,7 @@ type UpstreamOIDCProviderStatus struct {
type OIDCAuthorizationConfig struct { type OIDCAuthorizationConfig struct {
// AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization // AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization
// request flow with an OIDC identity provider. By default only the "openid" scope will be requested. // request flow with an OIDC identity provider. By default only the "openid" scope will be requested.
// +optional
AdditionalScopes []string `json:"additionalScopes"` AdditionalScopes []string `json:"additionalScopes"`
} }
@ -47,10 +48,12 @@ type OIDCAuthorizationConfig struct {
type OIDCClaims struct { type OIDCClaims struct {
// Groups provides the name of the token claim that will be used to ascertain the groups to which // Groups provides the name of the token claim that will be used to ascertain the groups to which
// an identity belongs. // an identity belongs.
// +optional
Groups string `json:"groups"` Groups string `json:"groups"`
// Username provides the name of the token claim that will be used to ascertain an identity's // Username provides the name of the token claim that will be used to ascertain an identity's
// username. // username.
// +optional
Username string `json:"username"` Username string `json:"username"`
} }
@ -74,10 +77,12 @@ type UpstreamOIDCProviderSpec struct {
// AuthorizationConfig holds information about how to form the OAuth2 authorization request // AuthorizationConfig holds information about how to form the OAuth2 authorization request
// parameters to be used with this OIDC identity provider. // parameters to be used with this OIDC identity provider.
// +optional
AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"` AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"`
// Claims provides the names of token claims that will be used when inspecting an identity from // Claims provides the names of token claims that will be used when inspecting an identity from
// this OIDC identity provider. // this OIDC identity provider.
// +optional
Claims OIDCClaims `json:"claims"` Claims OIDCClaims `json:"claims"`
// OIDCClient contains OIDC client information to be used used with this OIDC identity // OIDCClient contains OIDC client information to be used used with this OIDC identity

View File

@ -64,8 +64,6 @@ spec:
items: items:
type: string type: string
type: array type: array
required:
- additionalScopes
type: object type: object
claims: claims:
description: Claims provides the names of token claims that will be description: Claims provides the names of token claims that will be
@ -79,9 +77,6 @@ spec:
description: Username provides the name of the token claim that description: Username provides the name of the token claim that
will be used to ascertain an identity's username. will be used to ascertain an identity's username.
type: string type: string
required:
- groups
- username
type: object type: object
client: client:
description: OIDCClient contains OIDC client information to be used description: OIDCClient contains OIDC client information to be used
@ -104,8 +99,6 @@ spec:
pattern: ^https:// pattern: ^https://
type: string type: string
required: required:
- authorizationConfig
- claims
- client - client
- issuer - issuer
type: object type: object

View File

@ -16,7 +16,7 @@ const (
// PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state. // PhaseReady is the phase for an UpstreamOIDCProvider resource in a healthy state.
PhaseReady UpstreamOIDCProviderPhase = "Ready" PhaseReady UpstreamOIDCProviderPhase = "Ready"
// PhaseErorr is the phase for an UpstreamOIDCProvider in an unhealthy state. // PhaseError is the phase for an UpstreamOIDCProvider in an unhealthy state.
PhaseError UpstreamOIDCProviderPhase = "Error" PhaseError UpstreamOIDCProviderPhase = "Error"
) )
@ -40,6 +40,7 @@ type UpstreamOIDCProviderStatus struct {
type OIDCAuthorizationConfig struct { type OIDCAuthorizationConfig struct {
// AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization // AdditionalScopes are the scopes in addition to "openid" that will be requested as part of the authorization
// request flow with an OIDC identity provider. By default only the "openid" scope will be requested. // request flow with an OIDC identity provider. By default only the "openid" scope will be requested.
// +optional
AdditionalScopes []string `json:"additionalScopes"` AdditionalScopes []string `json:"additionalScopes"`
} }
@ -47,10 +48,12 @@ type OIDCAuthorizationConfig struct {
type OIDCClaims struct { type OIDCClaims struct {
// Groups provides the name of the token claim that will be used to ascertain the groups to which // Groups provides the name of the token claim that will be used to ascertain the groups to which
// an identity belongs. // an identity belongs.
// +optional
Groups string `json:"groups"` Groups string `json:"groups"`
// Username provides the name of the token claim that will be used to ascertain an identity's // Username provides the name of the token claim that will be used to ascertain an identity's
// username. // username.
// +optional
Username string `json:"username"` Username string `json:"username"`
} }
@ -74,10 +77,12 @@ type UpstreamOIDCProviderSpec struct {
// AuthorizationConfig holds information about how to form the OAuth2 authorization request // AuthorizationConfig holds information about how to form the OAuth2 authorization request
// parameters to be used with this OIDC identity provider. // parameters to be used with this OIDC identity provider.
// +optional
AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"` AuthorizationConfig OIDCAuthorizationConfig `json:"authorizationConfig"`
// Claims provides the names of token claims that will be used when inspecting an identity from // Claims provides the names of token claims that will be used when inspecting an identity from
// this OIDC identity provider. // this OIDC identity provider.
// +optional
Claims OIDCClaims `json:"claims"` Claims OIDCClaims `json:"claims"`
// OIDCClient contains OIDC client information to be used used with this OIDC identity // OIDCClient contains OIDC client information to be used used with this OIDC identity

View File

@ -64,8 +64,6 @@ spec:
items: items:
type: string type: string
type: array type: array
required:
- additionalScopes
type: object type: object
claims: claims:
description: Claims provides the names of token claims that will be description: Claims provides the names of token claims that will be
@ -79,9 +77,6 @@ spec:
description: Username provides the name of the token claim that description: Username provides the name of the token claim that
will be used to ascertain an identity's username. will be used to ascertain an identity's username.
type: string type: string
required:
- groups
- username
type: object type: object
client: client:
description: OIDCClient contains OIDC client information to be used description: OIDCClient contains OIDC client information to be used
@ -104,8 +99,6 @@ spec:
pattern: ^https:// pattern: ^https://
type: string type: string
required: required:
- authorizationConfig
- claims
- client - client
- issuer - issuer
type: object type: object