Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the eapol v1 API group +kubebuilder:object:generate=true +groupName=eapol.eapol.openshift.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "eapol.eapol.openshift.io", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Auth ¶
type Auth struct { // Local configures the local internal authentication server // +optional Local *Local `json:"local,omitempty"` // Radius is the external RADIUS server configuration to use for authentication // +optional Radius *Radius `json:"radius,omitempty"` }
Auth represents back-end authentication configuration
func (*Auth) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Auth.
func (*Auth) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Authenticator ¶
type Authenticator struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AuthenticatorSpec `json:"spec,omitempty"` Status AuthenticatorStatus `json:"status,omitempty"` }
Authenticator is the Schema for the authenticators API
func (*Authenticator) DeepCopy ¶
func (in *Authenticator) DeepCopy() *Authenticator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authenticator.
func (*Authenticator) DeepCopyInto ¶
func (in *Authenticator) DeepCopyInto(out *Authenticator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Authenticator) DeepCopyObject ¶
func (in *Authenticator) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AuthenticatorList ¶
type AuthenticatorList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Authenticator `json:"items"` }
AuthenticatorList contains a list of Authenticator
func (*AuthenticatorList) DeepCopy ¶
func (in *AuthenticatorList) DeepCopy() *AuthenticatorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticatorList.
func (*AuthenticatorList) DeepCopyInto ¶
func (in *AuthenticatorList) DeepCopyInto(out *AuthenticatorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AuthenticatorList) DeepCopyObject ¶
func (in *AuthenticatorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AuthenticatorSpec ¶
type AuthenticatorSpec struct { // Enabled controls whether this authenticator is enabled or disabled // +kubebuilder:default=true // +optional Enabled bool `json:"enabled"` // Interfaces is the list of interfaces to protect under this authenticator instance Interfaces []string `json:"interfaces"` // Authentication configures back-end authentication for this authenticator Authentication Auth `json:"authentication"` // Configuration contains various low-level EAP tunable values // +optional Configuration *Config `json:"configuration,omitempty"` // Image optionally overrides the default eapol-authenticator container image // +optional Image string `json:"image,omitempty"` // NodeSelector limits the nodes that the authenticator can run on // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // TrafficControl configures the traffic allowed in and out when // authenticated and not authenticated. If unset, the default is to // disallow all traffic until authenticated, and then allow all traffic. // +optional TrafficControl *TrafficControl `json:"trafficControl,omitempty"` }
AuthenticatorSpec defines the desired state of a single authenticator instance
func (*AuthenticatorSpec) DeepCopy ¶
func (in *AuthenticatorSpec) DeepCopy() *AuthenticatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticatorSpec.
func (*AuthenticatorSpec) DeepCopyInto ¶
func (in *AuthenticatorSpec) DeepCopyInto(out *AuthenticatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthenticatorStatus ¶
type AuthenticatorStatus struct { // Interfaces is the list of interface status // +optional Interfaces []*Interface `json:"interfaces,omitempty"` }
AuthenticatorStatus defines the observed state of Authenticator
func (*AuthenticatorStatus) DeepCopy ¶
func (in *AuthenticatorStatus) DeepCopy() *AuthenticatorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticatorStatus.
func (*AuthenticatorStatus) DeepCopyInto ¶
func (in *AuthenticatorStatus) DeepCopyInto(out *AuthenticatorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Config ¶
type Config struct { // EapReauthPeriod is the EAP reauthentication period in seconds (default: 3600 seconds; 0 = disable) // +kubebuilder:default=3600 EapReauthPeriod int `json:"eapReauthPeriod"` }
Config represents miscelaneous 802.1x and EAP tunable values
func (*Config) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.
func (*Config) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Interface ¶
type Interface struct { // Name is the name of the interface Name string `json:"name"` // State is the state of the interface. The possible states are Uninitialized, // Disabled, CountryUpdate, ACS, HT Scan, DFS, Enabled or Unknown. State IfState `json:"status"` // AuthenticatedClients is the list of authenticated stations on the interface // +optional AuthenticatedClients []string `json:"authenticatedClients"` }
func (*Interface) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Interface.
func (*Interface) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Local ¶
type Local struct { // UserFileSecret configures the local authentication user file based on a secret contents. // If the key is not specified, it is assumed to be "hostapd.eap_user" // +optional UserFileSecret *SecretKeyRef `json:"userFileSecret,omitempty"` // CaCertSecret secret reference containing certificate authority for hostapd daemon. // If the key is not specified, it is assumed to be "1x-ca.pem" // +optional CaCertSecret *SecretKeyRef `json:"caCertSecret,omitempty"` // ServerCertSecret secret reference containing server certificate for hostapd daemon. // If the key is not specified, it is assumed to be "1x-hostapd.example.com.pem" // +optional ServerCertSecret *SecretKeyRef `json:"serverCertSecret,omitempty"` // PrivateKeySecret secret reference containing private key for hostapd daemon server certificate. // If the key is not specified, it is assumed to be "1x-hostapd.example.com.key" // +optional PrivateKeySecret *SecretKeyRef `json:"privateKeySecret,omitempty"` // PrivateKeyPassphrase containing passphrase for the private key. // +optional PrivateKeyPassphrase string `json:"privateKeyPassphrase,omitempty"` // RadiusClientSecret secret reference containing client information for local radius server. // If the key is not specified, it is assumed to be "hostapd.radius_clients" // +optional RadiusClientSecret *SecretKeyRef `json:"radiusClientFileSecret,omitempty"` // AuthPort UDP listening port Local Radius authentication server. // +kubebuilder:default=1812 // +optional AuthPort int `json:"authPort"` }
Local represents a local EAP authentication configuration
func (*Local) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Local.
func (*Local) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ports ¶
type Ports struct { // Tcp is a list of tcp ports // +optional Tcp []int `json:"tcp,omitempty"` // Udp is a lits of udp ports // +optional Udp []int `json:"udp,omitempty"` }
Port represents a single IP port
func (*Ports) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ports.
func (*Ports) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Radius ¶
type Radius struct { // AuthServer is the IP address or hostname of the RADIUS authentication server AuthServer string `json:"authServer"` // AuthPort is the TCP Port of the RADIUS authentication server AuthPort int `json:"authPort"` // AuthSecret is the name of the Secret that contains the RADIUS authentication server shared secret AuthSecret string `json:"authSecret"` }
Radius represents a RADIUS server configuration
func (*Radius) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Radius.
func (*Radius) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretKeyRef ¶
type SecretKeyRef struct { // Name is the name of the secret to reference Name string `json:"name"` // Key is the key in the secret to refer to // +optional Key string `json:"key,omitempty"` }
func (*SecretKeyRef) DeepCopy ¶
func (in *SecretKeyRef) DeepCopy() *SecretKeyRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeyRef.
func (*SecretKeyRef) DeepCopyInto ¶
func (in *SecretKeyRef) DeepCopyInto(out *SecretKeyRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficControl ¶
type TrafficControl struct { // UnprotectedPorts is a list of ingress destination ports to allow even for unathenticated interfaces // +optional UnprotectedPorts *Ports `json:"unprotectedPorts,omitempty"` }
TrafficControl represents the traffic control for hostapd.
func (*TrafficControl) DeepCopy ¶
func (in *TrafficControl) DeepCopy() *TrafficControl
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficControl.
func (*TrafficControl) DeepCopyInto ¶
func (in *TrafficControl) DeepCopyInto(out *TrafficControl)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.