v1alpha1

package
v1.124.0 Latest Latest
Warning

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

Go to latest
Published: Oct 15, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the privilegedaccessmanager v1alpha1 API group. +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/GoogleCloudPlatform/k8s-config-connector/pkg/clients/generated/pkg/apis/privilegedaccessmanager +k8s:defaulter-gen=TypeMeta +groupName=privilegedaccessmanager.cnrm.cloud.google.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is the group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: "privilegedaccessmanager.cnrm.cloud.google.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme

	PrivilegedAccessManagerEntitlementGVK = schema.GroupVersionKind{
		Group:   SchemeGroupVersion.Group,
		Version: SchemeGroupVersion.Version,
		Kind:    reflect.TypeOf(PrivilegedAccessManagerEntitlement{}).Name(),
	}
)

Functions

This section is empty.

Types

type EntitlementAdditionalNotificationTargets

type EntitlementAdditionalNotificationTargets struct {
	/* Optional. Additional email addresses to be notified when a principal (requester) is granted access. */
	// +optional
	AdminEmailRecipients []string `json:"adminEmailRecipients,omitempty"`

	/* Optional. Additional email address to be notified about an eligible entitlement. */
	// +optional
	RequesterEmailRecipients []string `json:"requesterEmailRecipients,omitempty"`
}

func (*EntitlementAdditionalNotificationTargets) DeepCopy

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

func (*EntitlementAdditionalNotificationTargets) DeepCopyInto

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

type EntitlementApprovalWorkflow

type EntitlementApprovalWorkflow struct {
	/* An approval workflow where users designated as approvers review and act on the grants. */
	ManualApprovals EntitlementManualApprovals `json:"manualApprovals"`
}

func (*EntitlementApprovalWorkflow) DeepCopy

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

func (*EntitlementApprovalWorkflow) DeepCopyInto

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

type EntitlementApprovers

type EntitlementApprovers struct {
	/* Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1 */
	Principals []string `json:"principals"`
}

func (*EntitlementApprovers) DeepCopy

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

func (*EntitlementApprovers) DeepCopyInto

func (in *EntitlementApprovers) DeepCopyInto(out *EntitlementApprovers)

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

type EntitlementEligibleUsers

type EntitlementEligibleUsers struct {
	/* Optional. Users who are allowed for the operation. Each entry should be a valid v1 IAM principal identifier. The format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1 */
	Principals []string `json:"principals"`
}

func (*EntitlementEligibleUsers) DeepCopy

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

func (*EntitlementEligibleUsers) DeepCopyInto

func (in *EntitlementEligibleUsers) DeepCopyInto(out *EntitlementEligibleUsers)

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

type EntitlementGcpIAMAccess

type EntitlementGcpIAMAccess struct {
	/* Required. Role bindings that are created on successful grant. */
	RoleBindings []EntitlementRoleBindings `json:"roleBindings"`
}

func (*EntitlementGcpIAMAccess) DeepCopy

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

func (*EntitlementGcpIAMAccess) DeepCopyInto

func (in *EntitlementGcpIAMAccess) DeepCopyInto(out *EntitlementGcpIAMAccess)

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

type EntitlementManualApprovals

type EntitlementManualApprovals struct {
	/* Optional. Whether the approvers need to provide a justification for their actions. */
	// +optional
	RequireApproverJustification *bool `json:"requireApproverJustification,omitempty"`

	/* Optional. List of approval steps in this workflow. These steps are followed in the specified order sequentially. Only 1 step is supported. */
	// +optional
	Step []EntitlementStep `json:"step,omitempty"`
}

func (*EntitlementManualApprovals) DeepCopy

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

func (*EntitlementManualApprovals) DeepCopyInto

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

type EntitlementNotMandatory

type EntitlementNotMandatory struct {
}

func (*EntitlementNotMandatory) DeepCopy

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

func (*EntitlementNotMandatory) DeepCopyInto

func (in *EntitlementNotMandatory) DeepCopyInto(out *EntitlementNotMandatory)

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

type EntitlementObservedStateStatus

type EntitlementObservedStateStatus struct {
	/* Output only. Create time stamp. */
	// +optional
	CreateTime *string `json:"createTime,omitempty"`

	/* An 'etag' is used for optimistic concurrency control as a way to prevent simultaneous updates to the same entitlement. An 'etag' is returned in the response to 'GetEntitlement' and the caller should put the 'etag' in the request to 'UpdateEntitlement' so that their change is applied on the same version. If this field is omitted or if there is a mismatch while updating an entitlement, then the server rejects the request. */
	// +optional
	Etag *string `json:"etag,omitempty"`

	/* Output only. Current state of this entitlement. */
	// +optional
	State *string `json:"state,omitempty"`

	/* Output only. Update time stamp. */
	// +optional
	UpdateTime *string `json:"updateTime,omitempty"`
}

func (*EntitlementObservedStateStatus) DeepCopy

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

func (*EntitlementObservedStateStatus) DeepCopyInto

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

type EntitlementPrivilegedAccess

type EntitlementPrivilegedAccess struct {
	/* Access to a Google Cloud resource through IAM. */
	GcpIAMAccess EntitlementGcpIAMAccess `json:"gcpIAMAccess"`
}

func (*EntitlementPrivilegedAccess) DeepCopy

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

func (*EntitlementPrivilegedAccess) DeepCopyInto

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

type EntitlementRequesterJustificationConfig

type EntitlementRequesterJustificationConfig struct {
	/* NotMandatory justification type means the justification isn't required and can be provided in any of the supported formats. The user must explicitly opt out using this field if a justification from the requester isn't mandatory. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set. */
	// +optional
	NotMandatory *EntitlementNotMandatory `json:"notMandatory,omitempty"`

	/* Unstructured justification type means the justification is in the format of a string. If this is set, the server allows the requester to provide a justification but doesn't validate it. The only accepted value is `{}` (empty struct). Either 'notMandatory' or 'unstructured' field must be set. */
	// +optional
	Unstructured *EntitlementUnstructured `json:"unstructured,omitempty"`
}

func (*EntitlementRequesterJustificationConfig) DeepCopy

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

func (*EntitlementRequesterJustificationConfig) DeepCopyInto

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

type EntitlementRoleBindings

type EntitlementRoleBindings struct {
	/* Optional. The expression field of the IAM condition to be associated
	with the role. If specified, a user with an active grant for this
	entitlement is able to access the resource only if this condition
	evaluates to true for their request.

	This field uses the same CEL format as IAM and supports all attributes
	that IAM supports, except tags. More details can be found at
	https://cloud.google.com/iam/docs/conditions-overview#attributes. */
	// +optional
	ConditionExpression *string `json:"conditionExpression,omitempty"`

	/* Required. IAM role to be granted. More details can be found at https://cloud.google.com/iam/docs/roles-overview. */
	Role string `json:"role"`
}

func (*EntitlementRoleBindings) DeepCopy

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

func (*EntitlementRoleBindings) DeepCopyInto

func (in *EntitlementRoleBindings) DeepCopyInto(out *EntitlementRoleBindings)

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

type EntitlementStep

type EntitlementStep struct {
	/* Required. How many users from the above list need to approve. If there aren't enough distinct users in the list, then the workflow indefinitely blocks. Should always be greater than 0. 1 is the only supported value. */
	ApprovalsNeeded int32 `json:"approvalsNeeded"`

	/* Optional. Additional email addresses to be notified when a grant is pending approval. */
	// +optional
	ApproverEmailRecipients []string `json:"approverEmailRecipients,omitempty"`

	/* Optional. The potential set of approvers in this step. This list must contain at most one entry. */
	// +optional
	Approvers []EntitlementApprovers `json:"approvers,omitempty"`
}

func (*EntitlementStep) DeepCopy

func (in *EntitlementStep) DeepCopy() *EntitlementStep

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

func (*EntitlementStep) DeepCopyInto

func (in *EntitlementStep) DeepCopyInto(out *EntitlementStep)

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

type EntitlementUnstructured

type EntitlementUnstructured struct {
}

func (*EntitlementUnstructured) DeepCopy

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

func (*EntitlementUnstructured) DeepCopyInto

func (in *EntitlementUnstructured) DeepCopyInto(out *EntitlementUnstructured)

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

type PrivilegedAccessManagerEntitlement

type PrivilegedAccessManagerEntitlement struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PrivilegedAccessManagerEntitlementSpec   `json:"spec,omitempty"`
	Status PrivilegedAccessManagerEntitlementStatus `json:"status,omitempty"`
}

PrivilegedAccessManagerEntitlement is the Schema for the privilegedaccessmanager API +k8s:openapi-gen=true

func (*PrivilegedAccessManagerEntitlement) DeepCopy

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

func (*PrivilegedAccessManagerEntitlement) DeepCopyInto

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

func (*PrivilegedAccessManagerEntitlement) DeepCopyObject

func (in *PrivilegedAccessManagerEntitlement) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PrivilegedAccessManagerEntitlementList

type PrivilegedAccessManagerEntitlementList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PrivilegedAccessManagerEntitlement `json:"items"`
}

PrivilegedAccessManagerEntitlementList contains a list of PrivilegedAccessManagerEntitlement

func (*PrivilegedAccessManagerEntitlementList) DeepCopy

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

func (*PrivilegedAccessManagerEntitlementList) DeepCopyInto

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

func (*PrivilegedAccessManagerEntitlementList) DeepCopyObject

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PrivilegedAccessManagerEntitlementSpec

type PrivilegedAccessManagerEntitlementSpec struct {
	/* Optional. Additional email addresses to be notified based on actions taken. */
	// +optional
	AdditionalNotificationTargets *EntitlementAdditionalNotificationTargets `json:"additionalNotificationTargets,omitempty"`

	/* Optional. The approvals needed before access are granted to a requester. No approvals are needed if this field is null. */
	// +optional
	ApprovalWorkflow *EntitlementApprovalWorkflow `json:"approvalWorkflow,omitempty"`

	/* Who can create grants using this entitlement. This list should contain at most one entry. */
	EligibleUsers []EntitlementEligibleUsers `json:"eligibleUsers"`

	/* Immutable. The Folder that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set. */
	// +optional
	FolderRef *v1alpha1.ResourceRef `json:"folderRef,omitempty"`

	/* Immutable. Location of the resource. */
	Location string `json:"location"`

	/* Required. The maximum amount of time that access is granted for a request. A requester can ask for a duration less than this, but never more. */
	MaxRequestDuration string `json:"maxRequestDuration"`

	/* Immutable. The Organization that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set. */
	// +optional
	OrganizationRef *v1alpha1.ResourceRef `json:"organizationRef,omitempty"`

	/* The access granted to a requester on successful approval. */
	PrivilegedAccess EntitlementPrivilegedAccess `json:"privilegedAccess"`

	/* Immutable. The Project that this resource belongs to. One and only one of 'projectRef', 'folderRef', or 'organizationRef' must be set. */
	// +optional
	ProjectRef *v1alpha1.ResourceRef `json:"projectRef,omitempty"`

	/* Required. The manner in which the requester should provide a justification for requesting access. */
	RequesterJustificationConfig EntitlementRequesterJustificationConfig `json:"requesterJustificationConfig"`

	/* Immutable. The PrivilegedAccessManagerEntitlement name. If not given, the 'metadata.name' will be used. */
	// +optional
	ResourceID *string `json:"resourceID,omitempty"`
}

func (*PrivilegedAccessManagerEntitlementSpec) DeepCopy

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

func (*PrivilegedAccessManagerEntitlementSpec) DeepCopyInto

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

type PrivilegedAccessManagerEntitlementStatus

type PrivilegedAccessManagerEntitlementStatus struct {
	/* Conditions represent the latest available observations of the
	   PrivilegedAccessManagerEntitlement's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
	/* A unique specifier for the PrivilegedAccessManagerEntitlement resource in GCP. */
	// +optional
	ExternalRef *string `json:"externalRef,omitempty"`

	/* ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to 'metadata.generation', then that means that the current reported status reflects the most recent desired state of the resource. */
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`

	/* ObservedState is the state of the resource as most recently observed in GCP. */
	// +optional
	ObservedState *EntitlementObservedStateStatus `json:"observedState,omitempty"`
}

func (*PrivilegedAccessManagerEntitlementStatus) DeepCopy

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

func (*PrivilegedAccessManagerEntitlementStatus) DeepCopyInto

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