Documentation
¶
Overview ¶
+groupName=krsdev.app +versionName=v1
Index ¶
- Variables
- type AccessPolicy
- type AccessPolicyList
- type AccessPolicyOIDC
- type AccessPolicyOIDCCredentialsSecret
- type AccessPolicyRoute
- type AccessPolicyRouteHeader
- type AccessPolicySpec
- type AccessPolicyStatus
- type AccessPolicyStatusIngress
- type OpenIDProvider
- type OpenIDProviderList
- type OpenIDProviderRoleMapping
- type OpenIDProviderSpec
Constants ¶
This section is empty.
Variables ¶
var ( GroupVersion = schema.GroupVersion{Group: "krsdev.app", Version: "v1"} AddToScheme = schemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AccessPolicy ¶
type AccessPolicy struct {
meta.TypeMeta `json:",inline"`
meta.ObjectMeta `json:"metadata"`
Spec AccessPolicySpec `json:"spec"`
// +kubebuilder:validation:Optional
Status AccessPolicyStatus `json:"status,omitempty"`
}
+kubebuilder:resource:path=accesspolicies,shortName=ap +kubebuilder:printcolumn:name=Gateway,type=string,JSONPath=.spec.gateway +kubebuilder:printcolumn:name=OpenID Provider,type=string,JSONPath=.spec.oidc.provider +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*AccessPolicy) Normalize ¶
func (in *AccessPolicy) Normalize()
func (*AccessPolicy) Validate ¶
func (in *AccessPolicy) Validate() []error
type AccessPolicyList ¶
type AccessPolicyList struct {
meta.TypeMeta `json:",inline"`
meta.ListMeta `json:"metadata"`
Items []AccessPolicy `json:"items"`
}
+kubebuilder:object:root=true
type AccessPolicyOIDC ¶
type AccessPolicyOIDC struct {
// +kubebuilder:validation:Pattern=`^([a-z-]+/)?[a-z-.]+$`
Provider string `json:"provider"`
CredentialsSecret AccessPolicyOIDCCredentialsSecret `json:"credentialsSecretRef"`
// +kubebuilder:validation:Optional
// +kubebuilder:validation:Pattern=`^\/[A-Za-z0-9\-._~!$&'()*+,;=:@\/%]*$|^$`
CallbackPath string `json:"callbackPath"`
}
func (*AccessPolicyOIDC) Normalize ¶
func (in *AccessPolicyOIDC) Normalize()
func (*AccessPolicyOIDC) Validate ¶
func (in *AccessPolicyOIDC) Validate(errs []error) []error
type AccessPolicyOIDCCredentialsSecret ¶
type AccessPolicyOIDCCredentialsSecret struct {
Name string `json:"name"`
// +kubebuilder:validation:Optional
ClientIDKey string `json:"clientIDKey"`
// +kubebuilder:validation:Optional
ClientSecretKey string `json:"clientSecretKey"`
// +kubebuilder:validation:Optional
TokenSecretKey string `json:"tokenSecretKey"`
}
func (*AccessPolicyOIDCCredentialsSecret) Normalize ¶
func (in *AccessPolicyOIDCCredentialsSecret) Normalize()
type AccessPolicyRoute ¶
type AccessPolicyRoute struct {
// +kubebuilder:validation:Optional
Name string `json:"name,omitempty"`
// +kubebuilder:validation:Optional
Roles []string `json:"roles,omitempty"`
// +kubebuilder:validation:Optional
Headers []AccessPolicyRouteHeader `json:"headers,omitempty"`
// +kubebuilder:validation:Optional
DisableEnforcement bool `json:"disableEnforcement,omitempty"`
}
+kubebuilder:object:generate=true
type AccessPolicyRouteHeader ¶
type AccessPolicyRouteHeader struct {
Name string `json:"name"`
Roles []string `json:"roles"`
// +kubebuilder:validation:Optional
Value string `json:"value,omitempty"`
}
+kubebuilder:object:generate=true
type AccessPolicySpec ¶
type AccessPolicySpec struct {
Gateway string `json:"gateway"`
OIDC AccessPolicyOIDC `json:"oidc"`
// +kubebuilder:validation:Optional
Routes []AccessPolicyRoute `json:"routes,omitempty"`
}
+kubebuilder:object:generate=true
func (*AccessPolicySpec) Normalize ¶
func (in *AccessPolicySpec) Normalize()
func (*AccessPolicySpec) Validate ¶
func (in *AccessPolicySpec) Validate(errs []error) []error
type AccessPolicyStatus ¶
type AccessPolicyStatus struct {
// +kubebuilder:validation:Optional
Ingress AccessPolicyStatusIngress `json:"ingress,omitempty"`
// +kubebuilder:validation:Optional
VirtualHosts []string `json:"virtualHosts,omitempty"`
}
+kubebuilder:object:generate=true
func (*AccessPolicyStatus) GetIngress ¶
func (in *AccessPolicyStatus) GetIngress() *AccessPolicyStatusIngress
type AccessPolicyStatusIngress ¶
+kubebuilder:object:generate=true
func (*AccessPolicyStatusIngress) GetSelector ¶
func (in *AccessPolicyStatusIngress) GetSelector() map[string]string
type OpenIDProvider ¶
type OpenIDProvider struct {
meta.TypeMeta `json:",inline"`
meta.ObjectMeta `json:"metadata"`
Spec OpenIDProviderSpec `json:"spec"`
}
+kubebuilder:resource:path=openidproviders +kubebuilder:printcolumn:name=Issuer,type=string,JSONPath=.spec.issuer +kubebuilder:object:root=true
type OpenIDProviderList ¶
type OpenIDProviderList struct {
meta.TypeMeta `json:",inline"`
meta.ListMeta `json:"metadata"`
Items []OpenIDProvider `json:"items"`
}
+kubebuilder:object:root=true
type OpenIDProviderSpec ¶
type OpenIDProviderSpec struct {
Issuer string `json:"issuer"`
// +kubebuilder:validation:Optional
RoleMappings []OpenIDProviderRoleMapping `json:"roleMappings"`
}
+kubebuilder:object:generate=true