rbac

package
v0.13.9 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NodesProxy             ProxyServiceKind = "Nodes"
	StorageClassesProxy    ProxyServiceKind = "StorageClasses"
	IngressClassesProxy    ProxyServiceKind = "IngressClasses"
	PriorityClassesProxy   ProxyServiceKind = "PriorityClasses"
	RuntimeClassesProxy    ProxyServiceKind = "RuntimeClasses"
	PersistentVolumesProxy ProxyServiceKind = "PersistentVolumes"
	TenantProxy            ProxyServiceKind = "Tenant"

	ListOperation   ProxyOperation = "List"
	UpdateOperation ProxyOperation = "Update"
	DeleteOperation ProxyOperation = "Delete"

	UserOwner           OwnerKind = "User"
	GroupOwner          OwnerKind = "Group"
	ServiceAccountOwner OwnerKind = "ServiceAccount"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AdditionalRoleBindingsSpec

type AdditionalRoleBindingsSpec struct {
	ClusterRoleName string `json:"clusterRoleName"`
	// kubebuilder:validation:Minimum=1
	Subjects []rbacv1.Subject `json:"subjects"`
	// Additional Labels for the synchronized rolebindings
	Labels map[string]string `json:"labels,omitempty"`
	// Additional Annotations for the synchronized rolebindings
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*AdditionalRoleBindingsSpec) DeepCopy

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

func (*AdditionalRoleBindingsSpec) DeepCopyInto

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

type AdditionalRoleBindingsWithNamespaceSpec

type AdditionalRoleBindingsWithNamespaceSpec struct {
	AdditionalRoleBindingsSpec `json:",inline"`

	// Target Namespace
	Namespace meta.RFC1123SubdomainName `json:"namespace"`
}

type ByKindAndName

type ByKindAndName OwnerListSpec

func (ByKindAndName) Len

func (b ByKindAndName) Len() int

func (ByKindAndName) Less

func (b ByKindAndName) Less(i, j int) bool

func (ByKindAndName) Swap

func (b ByKindAndName) Swap(i, j int)

type ByKindName

type ByKindName UserListSpec

func (ByKindName) Len

func (b ByKindName) Len() int

func (ByKindName) Less

func (b ByKindName) Less(i, j int) bool

func (ByKindName) Swap

func (b ByKindName) Swap(i, j int)

type CoreOwnerSpec

type CoreOwnerSpec struct {
	UserSpec `json:",inline"`

	// Defines additional cluster-roles for the specific Owner.
	// +kubebuilder:default={admin,capsule-namespace-deleter}
	ClusterRoles []string `json:"clusterRoles,omitempty"`
}

func (*CoreOwnerSpec) DeepCopy

func (in *CoreOwnerSpec) DeepCopy() *CoreOwnerSpec

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

func (*CoreOwnerSpec) DeepCopyInto

func (in *CoreOwnerSpec) DeepCopyInto(out *CoreOwnerSpec)

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

func (CoreOwnerSpec) ToAdditionalRolebindings

func (o CoreOwnerSpec) ToAdditionalRolebindings() []AdditionalRoleBindingsSpec

type GetByKindAndName

type GetByKindAndName OwnerStatusListSpec

func (GetByKindAndName) Len

func (b GetByKindAndName) Len() int

func (GetByKindAndName) Less

func (b GetByKindAndName) Less(i, j int) bool

func (GetByKindAndName) Swap

func (b GetByKindAndName) Swap(i, j int)

type GetPromotionByKindNameAndTargets

type GetPromotionByKindNameAndTargets PromotionStatusListSpec

func (GetPromotionByKindNameAndTargets) Len

func (GetPromotionByKindNameAndTargets) Less

func (GetPromotionByKindNameAndTargets) Swap

type OwnerKind

type OwnerKind string

+kubebuilder:validation:Enum=User;Group;ServiceAccount

func (OwnerKind) String

func (k OwnerKind) String() string

type OwnerListSpec

type OwnerListSpec []OwnerSpec

func (OwnerListSpec) DeepCopy

func (in OwnerListSpec) DeepCopy() OwnerListSpec

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

func (OwnerListSpec) DeepCopyInto

func (in OwnerListSpec) DeepCopyInto(out *OwnerListSpec)

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

func (OwnerListSpec) FindOwner

func (o OwnerListSpec) FindOwner(name string, kind OwnerKind) (owner OwnerSpec)

func (OwnerListSpec) IsOwner

func (o OwnerListSpec) IsOwner(name string, groups []string) bool

func (OwnerListSpec) ToStatusOwners

func (o OwnerListSpec) ToStatusOwners() OwnerStatusListSpec

type OwnerSpec

type OwnerSpec struct {
	CoreOwnerSpec `json:",inline"`

	// Proxy settings for tenant owner.
	ProxyOperations []ProxySettings `json:"proxySettings,omitempty"`
	// Additional Labels for the synchronized rolebindings
	Labels map[string]string `json:"labels,omitempty"`
	// Additional Annotations for the synchronized rolebindings
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*OwnerSpec) DeepCopy

func (in *OwnerSpec) DeepCopy() *OwnerSpec

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

func (*OwnerSpec) DeepCopyInto

func (in *OwnerSpec) DeepCopyInto(out *OwnerSpec)

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

type OwnerStatusListSpec

type OwnerStatusListSpec []CoreOwnerSpec

func (OwnerStatusListSpec) DeepCopy

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

func (OwnerStatusListSpec) DeepCopyInto

func (in OwnerStatusListSpec) DeepCopyInto(out *OwnerStatusListSpec)

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

func (OwnerStatusListSpec) FindOwner

func (o OwnerStatusListSpec) FindOwner(name string, kind OwnerKind) (CoreOwnerSpec, bool)

func (OwnerStatusListSpec) IsOwner

func (o OwnerStatusListSpec) IsOwner(name string, groups []string) bool

func (*OwnerStatusListSpec) Upsert

func (o *OwnerStatusListSpec) Upsert(
	newOwner CoreOwnerSpec,
)

type PromotionSpec

type PromotionSpec struct {
	UserSpec `json:",inline"`

	// Defines additional cluster-roles for the specific Owner.
	// +kubebuilder:default={admin,capsule-namespace-deleter}
	ClusterRoles []string `json:"clusterRoles,omitempty"`

	// Defines additional cluster-roles for the specific Owner.
	Targets []string `json:"targets,omitempty"`
}

+kubebuilder:object:generate=true

func (*PromotionSpec) DeepCopy

func (in *PromotionSpec) DeepCopy() *PromotionSpec

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

func (*PromotionSpec) DeepCopyInto

func (in *PromotionSpec) DeepCopyInto(out *PromotionSpec)

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

func (PromotionSpec) ToAdditionalRolebindings

func (o PromotionSpec) ToAdditionalRolebindings() []AdditionalRoleBindingsWithNamespaceSpec

type PromotionStatusListSpec

type PromotionStatusListSpec []PromotionSpec

func (PromotionStatusListSpec) DeepCopy

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

func (PromotionStatusListSpec) DeepCopyInto

func (in PromotionStatusListSpec) DeepCopyInto(out *PromotionStatusListSpec)

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

func (PromotionStatusListSpec) FindUser

func (o PromotionStatusListSpec) FindUser(name string, kind OwnerKind) (PromotionSpec, bool)

func (*PromotionStatusListSpec) Upsert

func (o *PromotionStatusListSpec) Upsert(newPromotion PromotionSpec)

type ProxyOperation

type ProxyOperation string

+kubebuilder:validation:Enum=List;Update;Delete

func (ProxyOperation) String

func (p ProxyOperation) String() string

type ProxyServiceKind

type ProxyServiceKind string

+kubebuilder:validation:Enum=Nodes;StorageClasses;IngressClasses;PriorityClasses;RuntimeClasses;PersistentVolumes

func (ProxyServiceKind) String

func (p ProxyServiceKind) String() string

type ProxySettings

type ProxySettings struct {
	Kind       ProxyServiceKind `json:"kind"`
	Operations []ProxyOperation `json:"operations"`
}

func (*ProxySettings) DeepCopy

func (in *ProxySettings) DeepCopy() *ProxySettings

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

func (*ProxySettings) DeepCopyInto

func (in *ProxySettings) DeepCopyInto(out *ProxySettings)

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

type SubjectRoles

type SubjectRoles struct {
	Kind  string
	Name  string
	Roles []string
}

type UserKind

type UserKind string

+kubebuilder:validation:Enum=User;Group;ServiceAccount

func (UserKind) String

func (k UserKind) String() string

type UserListSpec

type UserListSpec []UserSpec

+kubebuilder:object:generate=true

func (UserListSpec) DeepCopy

func (in UserListSpec) DeepCopy() UserListSpec

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

func (UserListSpec) DeepCopyInto

func (in UserListSpec) DeepCopyInto(out *UserListSpec)

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

func (UserListSpec) FindUser

func (o UserListSpec) FindUser(name string, kind OwnerKind) (UserSpec, bool)

func (UserListSpec) GetByKinds

func (o UserListSpec) GetByKinds(kinds []OwnerKind) []string

func (UserListSpec) IsPresent

func (u UserListSpec) IsPresent(name string, groups []string) bool

func (UserListSpec) SplitUsersAndGroups

func (o UserListSpec) SplitUsersAndGroups() (users []string, groups []string)

func (*UserListSpec) Upsert

func (o *UserListSpec) Upsert(newUser UserSpec)

type UserSpec

type UserSpec struct {
	// Kind of entity. Possible values are "User", "Group", and "ServiceAccount"
	Kind OwnerKind `json:"kind"`
	// Name of the entity.
	Name string `json:"name"`
}

+kubebuilder:object:generate=true

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

func (UserSpec) Subject

func (u UserSpec) Subject() (subject rbacv1.Subject)

Jump to

Keyboard shortcuts

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