v1

package
v0.0.0-...-02ba5bb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

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

View Source
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

func (in *Auth) DeepCopy() *Auth

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Auth.

func (*Auth) DeepCopyInto

func (in *Auth) DeepCopyInto(out *Auth)

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

func (in *Config) DeepCopy() *Config

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.

func (*Config) DeepCopyInto

func (in *Config) DeepCopyInto(out *Config)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IfState

type IfState string
var (
	IfStateUninitialized IfState = "Uninitialized"
	IfStateDisabled      IfState = "Disabled"
	IfStateCountryUpdate IfState = "CountryUpdate"
	IfStateAcs           IfState = "ACS"
	IfStateHtScan        IfState = "HT Scan"
	IfStateDfs           IfState = "DFS"
	IfStateEnabled       IfState = "Enabled"
	IfStateUnknown       IfState = "Unknown"
)

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

func (in *Interface) DeepCopy() *Interface

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Interface.

func (*Interface) DeepCopyInto

func (in *Interface) DeepCopyInto(out *Interface)

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

func (in *Local) DeepCopy() *Local

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Local.

func (*Local) DeepCopyInto

func (in *Local) DeepCopyInto(out *Local)

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

func (in *Ports) DeepCopy() *Ports

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ports.

func (*Ports) DeepCopyInto

func (in *Ports) DeepCopyInto(out *Ports)

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

func (in *Radius) DeepCopy() *Radius

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Radius.

func (*Radius) DeepCopyInto

func (in *Radius) DeepCopyInto(out *Radius)

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL