v1alpha1

package
v0.15.15 Latest Latest
Warning

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

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

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API.

Index

Constants

View Source
const (
	CISKubeBenchReportCRName    = "ciskubebenchreports.khulnasoft-lab.github.io"
	CISKubeBenchReportCRVersion = "v1alpha1"
	CISKubeBenchReportKind      = "CISKubeBenchReport"
	CISKubeBenchReportListKind  = "CISKubeBenchReportList"
)
View Source
const (
	ConfigAuditReportCRName    = "configauditreports.khulnasoft-lab.github.io"
	ConfigAuditReportCRVersion = "v1alpha1"
	ConfigAuditReportKind      = "ConfigAuditReport"
	ConfigAuditReportListKind  = "ConfigAuditReportList"

	ClusterConfigAuditReportCRName = "clusterconfigauditreports.khulnasoft-lab.github.io"
)
View Source
const (
	KubeHunterReportCRName    = "kubehunterreports.khulnasoft-lab.github.io"
	KubeHunterReportCRVersion = "v1alpha1"
	KubeHunterReportKind      = "KubeHunterReport"
	KubeHunterReportListKind  = "KubeHunterReportList"
)
View Source
const (
	VulnerabilityReportsCRName    = "vulnerabilityreports.khulnasoft-lab.github.io"
	VulnerabilityReportsCRVersion = "v1alpha1"
	VulnerabilityReportKind       = "VulnerabilityReport"
	VulnerabilityReportListKind   = "VulnerabilityReportList"

	ClusterVulnerabilityReportsCRName = "clustervulnerabilityreports.khulnasoft-lab.github.io"
)
View Source
const (
	ClusterComplianceDetailReportCRName = "clustercompliancedetailreports.khulnasoft-lab.github.io"
)
View Source
const (
	ClusterComplianceReportCRName = "clustercompliancereports.khulnasoft-lab.github.io"
)
View Source
const (
	TTLReportAnnotation = "starboard.khulnasoft-lab.github.io/report-ttl"
)

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: khulnasoft.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Artifact

type Artifact struct {
	// Repository is the name of the repository in the Artifact registry.
	Repository string `json:"repository"`

	// Digest is a unique and immutable identifier of an Artifact.
	Digest string `json:"digest,omitempty"`

	// Tag is a mutable, human-readable string used to identify an Artifact.
	Tag string `json:"tag,omitempty"`

	// MimeType represents a type and format of an Artifact.
	MimeType string `json:"mimeType,omitempty"`
}

Artifact represents a standalone, executable package of software that includes everything needed to run an application.

func (*Artifact) DeepCopy

func (in *Artifact) DeepCopy() *Artifact

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

func (*Artifact) DeepCopyInto

func (in *Artifact) DeepCopyInto(out *Artifact)

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

type CISKubeBenchReport

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

	Report CISKubeBenchReportData `json:"report"`
}

CISKubeBenchReport is a specification for the CISKubeBenchReport resource.

func (*CISKubeBenchReport) DeepCopy

func (in *CISKubeBenchReport) DeepCopy() *CISKubeBenchReport

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

func (*CISKubeBenchReport) DeepCopyInto

func (in *CISKubeBenchReport) DeepCopyInto(out *CISKubeBenchReport)

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

func (*CISKubeBenchReport) DeepCopyObject

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

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

type CISKubeBenchReportData

type CISKubeBenchReportData struct {
	UpdateTimestamp metav1.Time           `json:"updateTimestamp"`
	Scanner         Scanner               `json:"scanner"`
	Summary         CISKubeBenchSummary   `json:"summary"`
	Sections        []CISKubeBenchSection `json:"sections"`
}

func (*CISKubeBenchReportData) DeepCopy

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

func (*CISKubeBenchReportData) DeepCopyInto

func (in *CISKubeBenchReportData) DeepCopyInto(out *CISKubeBenchReportData)

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

type CISKubeBenchReportList

type CISKubeBenchReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []CISKubeBenchReport `json:"items"`
}

CISKubeBenchReportList is a list of CISKubeBenchReport resources.

func (*CISKubeBenchReportList) DeepCopy

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

func (*CISKubeBenchReportList) DeepCopyInto

func (in *CISKubeBenchReportList) DeepCopyInto(out *CISKubeBenchReportList)

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

func (*CISKubeBenchReportList) DeepCopyObject

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

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

type CISKubeBenchResult

type CISKubeBenchResult struct {
	TestNumber  string `json:"test_number"`
	TestDesc    string `json:"test_desc"`
	Remediation string `json:"remediation"`
	Status      string `json:"status"`
	Scored      bool   `json:"scored"`
}

func (*CISKubeBenchResult) DeepCopy

func (in *CISKubeBenchResult) DeepCopy() *CISKubeBenchResult

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

func (*CISKubeBenchResult) DeepCopyInto

func (in *CISKubeBenchResult) DeepCopyInto(out *CISKubeBenchResult)

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

type CISKubeBenchSection

type CISKubeBenchSection struct {
	ID        string `json:"id"`
	Version   string `json:"version"`
	Text      string `json:"text"`
	NodeType  string `json:"node_type"`
	TotalPass int    `json:"total_pass"`
	TotalFail int    `json:"total_fail"`
	TotalWarn int    `json:"total_warn"`
	TotalInfo int    `json:"total_info"`

	Tests []CISKubeBenchTests `json:"tests"`
}

func (*CISKubeBenchSection) DeepCopy

func (in *CISKubeBenchSection) DeepCopy() *CISKubeBenchSection

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

func (*CISKubeBenchSection) DeepCopyInto

func (in *CISKubeBenchSection) DeepCopyInto(out *CISKubeBenchSection)

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

type CISKubeBenchSummary

type CISKubeBenchSummary struct {
	PassCount int `json:"passCount"`
	InfoCount int `json:"infoCount"`
	WarnCount int `json:"warnCount"`
	FailCount int `json:"failCount"`
}

func (*CISKubeBenchSummary) DeepCopy

func (in *CISKubeBenchSummary) DeepCopy() *CISKubeBenchSummary

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

func (*CISKubeBenchSummary) DeepCopyInto

func (in *CISKubeBenchSummary) DeepCopyInto(out *CISKubeBenchSummary)

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

type CISKubeBenchTests

type CISKubeBenchTests struct {
	Section string `json:"section"`
	Pass    int    `json:"pass"`
	Fail    int    `json:"fail"`
	Warn    int    `json:"warn"`
	Info    int    `json:"info"`
	Desc    string `json:"desc"`

	Results []CISKubeBenchResult `json:"results"`
}

func (*CISKubeBenchTests) DeepCopy

func (in *CISKubeBenchTests) DeepCopy() *CISKubeBenchTests

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

func (*CISKubeBenchTests) DeepCopyInto

func (in *CISKubeBenchTests) DeepCopyInto(out *CISKubeBenchTests)

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

type Check

type Check struct {
	ID          string   `json:"checkID"`
	Title       string   `json:"title,omitempty"`
	Description string   `json:"description,omitempty"`
	Severity    Severity `json:"severity"`
	Category    string   `json:"category,omitempty"`

	Messages []string `json:"messages,omitempty"`

	// Remediation provides description or links to external resources to remediate failing check.
	// +optional
	Remediation string `json:"remediation,omitempty"`

	Success bool `json:"success"`

	// Scope indicates the section of config that was audited.
	// +optional
	Scope *CheckScope `json:"scope,omitempty"`
}

Check provides the result of conducting a single audit step.

func (*Check) DeepCopy

func (in *Check) DeepCopy() *Check

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

func (*Check) DeepCopyInto

func (in *Check) DeepCopyInto(out *Check)

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

type CheckScope

type CheckScope struct {

	// Type indicates type of this scope, e.g. Container, ConfigMapKey or JSONPath.
	Type string `json:"type"`

	// Value indicates value of this scope that depends on Type, e.g. container name, ConfigMap key or JSONPath expression
	Value string `json:"value"`
}

CheckScope has Type and Value fields to further identify a given Check. For example, we can use `Container` as Type and `nginx` as Value to indicate that a particular check is relevant to the nginx container. Alternatively, Type may be `JSONPath` and the Value would be JSONPath expression, e.g. `.spec.container[0].securityContext.allowPrivilegeEscalation`.

Another use case for CheckScope is to inspect a ConfigMap with many keys and indicate a troublesome key. In this case the Type would be `ConfigMapKey` and the Value will hold the name of a key, e.g. `myawsprivatekey`.

func (*CheckScope) DeepCopy

func (in *CheckScope) DeepCopy() *CheckScope

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

func (*CheckScope) DeepCopyInto

func (in *CheckScope) DeepCopyInto(out *CheckScope)

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

type ClusterComplianceDetailReport

type ClusterComplianceDetailReport struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Report            ClusterComplianceDetailReportData `json:"report"`
}

ClusterComplianceDetailReport is a specification for the ClusterComplianceDetailReport resource.

func (*ClusterComplianceDetailReport) DeepCopy

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

func (*ClusterComplianceDetailReport) DeepCopyInto

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

func (*ClusterComplianceDetailReport) DeepCopyObject

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

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

type ClusterComplianceDetailReportData

type ClusterComplianceDetailReportData struct {
	UpdateTimestamp metav1.Time              `json:"updateTimestamp"`
	Type            Compliance               `json:"type"`
	Summary         ClusterComplianceSummary `json:"summary"`
	ControlChecks   []ControlCheckDetails    `json:"controlCheck"`
}

func (*ClusterComplianceDetailReportData) DeepCopy

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

func (*ClusterComplianceDetailReportData) DeepCopyInto

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

type ClusterComplianceDetailReportList

type ClusterComplianceDetailReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []ClusterComplianceReport `json:"items"`
}

ClusterComplianceDetailReportList is a list of compliance kinds.

func (*ClusterComplianceDetailReportList) DeepCopy

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

func (*ClusterComplianceDetailReportList) DeepCopyInto

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

func (*ClusterComplianceDetailReportList) DeepCopyObject

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

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

type ClusterComplianceReport

type ClusterComplianceReport struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ReportSpec   `json:"spec,omitempty"`
	Status            ReportStatus `json:"status,omitempty"`
}

ClusterComplianceReport is a specification for the ClusterComplianceReport resource.

func (*ClusterComplianceReport) DeepCopy

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

func (*ClusterComplianceReport) DeepCopyInto

func (in *ClusterComplianceReport) DeepCopyInto(out *ClusterComplianceReport)

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

func (*ClusterComplianceReport) DeepCopyObject

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

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

type ClusterComplianceReportList

type ClusterComplianceReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []ClusterComplianceReport `json:"items"`
}

ClusterComplianceReportList is a list of compliance kinds.

func (*ClusterComplianceReportList) DeepCopy

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

func (*ClusterComplianceReportList) DeepCopyInto

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

func (*ClusterComplianceReportList) DeepCopyObject

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

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

type ClusterComplianceSummary

type ClusterComplianceSummary struct {
	PassCount int `json:"passCount"`
	FailCount int `json:"failCount"`
}

func (*ClusterComplianceSummary) DeepCopy

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

func (*ClusterComplianceSummary) DeepCopyInto

func (in *ClusterComplianceSummary) DeepCopyInto(out *ClusterComplianceSummary)

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

type ClusterConfigAuditReport

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

	Report ConfigAuditReportData `json:"report"`
}

ClusterConfigAuditReport is a specification for the ClusterConfigAuditReport resource.

func (*ClusterConfigAuditReport) DeepCopy

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

func (*ClusterConfigAuditReport) DeepCopyInto

func (in *ClusterConfigAuditReport) DeepCopyInto(out *ClusterConfigAuditReport)

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

func (*ClusterConfigAuditReport) DeepCopyObject

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

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

type ClusterConfigAuditReportList

type ClusterConfigAuditReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []ClusterConfigAuditReport `json:"items"`
}

ClusterConfigAuditReportList is a list of ClusterConfigAuditReport resources.

func (*ClusterConfigAuditReportList) DeepCopy

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

func (*ClusterConfigAuditReportList) DeepCopyInto

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

func (*ClusterConfigAuditReportList) DeepCopyObject

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

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

type ClusterVulnerabilityReport

type ClusterVulnerabilityReport struct {
	metav1.TypeMeta   `json:",incline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Report VulnerabilityReportData `json:"report"`
}

ClusterVulnerabilityReport is a specification for the ClusterVulnerabilityReport resource.

func (*ClusterVulnerabilityReport) DeepCopy

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

func (*ClusterVulnerabilityReport) DeepCopyInto

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

func (*ClusterVulnerabilityReport) DeepCopyObject

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

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

type ClusterVulnerabilityReportList

type ClusterVulnerabilityReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []ClusterVulnerabilityReport `json:"items"`
}

ClusterVulnerabilityReportList is a list of ClusterVulnerabilityReport resources.

func (*ClusterVulnerabilityReportList) DeepCopy

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

func (*ClusterVulnerabilityReportList) DeepCopyInto

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

func (*ClusterVulnerabilityReportList) DeepCopyObject

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

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

type Compliance

type Compliance struct {
	// Name the name of the compliance report.
	Name string `json:"name"`
	// Description of the compliance report.
	Description string `json:"description"`

	// Version the compliance report.
	Version string `json:"version"`
}

Compliance is the specs for a security assessment report.

func (*Compliance) DeepCopy

func (in *Compliance) DeepCopy() *Compliance

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

func (*Compliance) DeepCopyInto

func (in *Compliance) DeepCopyInto(out *Compliance)

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

type ConfigAuditReport

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

	Report ConfigAuditReportData `json:"report"`
}

ConfigAuditReport is a specification for the ConfigAuditReport resource.

func (*ConfigAuditReport) DeepCopy

func (in *ConfigAuditReport) DeepCopy() *ConfigAuditReport

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

func (*ConfigAuditReport) DeepCopyInto

func (in *ConfigAuditReport) DeepCopyInto(out *ConfigAuditReport)

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

func (*ConfigAuditReport) DeepCopyObject

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

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

type ConfigAuditReportData

type ConfigAuditReportData struct {
	UpdateTimestamp metav1.Time        `json:"updateTimestamp"`
	Scanner         Scanner            `json:"scanner"`
	Summary         ConfigAuditSummary `json:"summary"`

	// Checks provides results of conducting audit steps.
	Checks []Check `json:"checks"`

	// Deprecated in 0.12+ use Checks with CheckScope instead
	PodChecks []Check `json:"podChecks"`
	// Deprecated in 0.12+ use Checks with CheckScope instead
	ContainerChecks map[string][]Check `json:"containerChecks"`
}

func (*ConfigAuditReportData) DeepCopy

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

func (*ConfigAuditReportData) DeepCopyInto

func (in *ConfigAuditReportData) DeepCopyInto(out *ConfigAuditReportData)

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

type ConfigAuditReportList

type ConfigAuditReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []ConfigAuditReport `json:"items"`
}

ConfigAuditReportList is a list of AuditConfig resources.

func (*ConfigAuditReportList) DeepCopy

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

func (*ConfigAuditReportList) DeepCopyInto

func (in *ConfigAuditReportList) DeepCopyInto(out *ConfigAuditReportList)

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

func (*ConfigAuditReportList) DeepCopyObject

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

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

type ConfigAuditSummary

type ConfigAuditSummary struct {

	// CriticalCount is the number of failed checks with critical severity.
	CriticalCount int `json:"criticalCount"`

	// HighCount is the number of failed checks with high severity.
	HighCount int `json:"highCount"`

	// MediumCount is the number of failed checks with medium severity.
	MediumCount int `json:"mediumCount"`

	// LowCount is the number of failed check with low severity.
	LowCount int `json:"lowCount"`
}

ConfigAuditSummary counts failed checks by severity.

func ConfigAuditSummaryFromChecks

func ConfigAuditSummaryFromChecks(checks []Check) ConfigAuditSummary

func (*ConfigAuditSummary) DeepCopy

func (in *ConfigAuditSummary) DeepCopy() *ConfigAuditSummary

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

func (*ConfigAuditSummary) DeepCopyInto

func (in *ConfigAuditSummary) DeepCopyInto(out *ConfigAuditSummary)

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

type Control

type Control struct {
	ID            string        `json:"id"`
	Name          string        `json:"name"`
	Description   string        `json:"description,omitempty"`
	Kinds         []string      `json:"kinds"`
	Mapping       Mapping       `json:"mapping"`
	Severity      Severity      `json:"severity"`
	DefaultStatus ControlStatus `json:"defaultStatus,omitempty"`
}

Control represent the cps controls data and mapping checks

func (*Control) DeepCopy

func (in *Control) DeepCopy() *Control

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

func (*Control) DeepCopyInto

func (in *Control) DeepCopyInto(out *Control)

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

type ControlCheck

type ControlCheck struct {
	ID          string   `json:"id"`
	Name        string   `json:"name"`
	Description string   `json:"description,omitempty"`
	PassTotal   int      `json:"passTotal"`
	FailTotal   int      `json:"failTotal"`
	Severity    Severity `json:"severity"`
}

ControlCheck provides the result of conducting a single audit step.

func (*ControlCheck) DeepCopy

func (in *ControlCheck) DeepCopy() *ControlCheck

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

func (*ControlCheck) DeepCopyInto

func (in *ControlCheck) DeepCopyInto(out *ControlCheck)

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

type ControlCheckDetails

type ControlCheckDetails struct {
	ID                 string               `json:"id"`
	Name               string               `json:"name"`
	Description        string               `json:"description,omitempty"`
	Severity           Severity             `json:"severity"`
	ScannerCheckResult []ScannerCheckResult `json:"checkResults"`
}

ControlCheckDetails provides the result of conducting a single audit step.

func (*ControlCheckDetails) DeepCopy

func (in *ControlCheckDetails) DeepCopy() *ControlCheckDetails

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

func (*ControlCheckDetails) DeepCopyInto

func (in *ControlCheckDetails) DeepCopyInto(out *ControlCheckDetails)

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

type ControlStatus

type ControlStatus string
const (
	FailStatus ControlStatus = "FAIL"
	PassStatus ControlStatus = "PASS"
	WarnStatus ControlStatus = "WARN"
)

type KubeHunterReport

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

	Report KubeHunterReportData `json:"report"`
}

KubeHunterReport is a specification for the KubeHunterReport resource.

func (*KubeHunterReport) DeepCopy

func (in *KubeHunterReport) DeepCopy() *KubeHunterReport

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

func (*KubeHunterReport) DeepCopyInto

func (in *KubeHunterReport) DeepCopyInto(out *KubeHunterReport)

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

func (*KubeHunterReport) DeepCopyObject

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

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

type KubeHunterReportData

type KubeHunterReportData struct {
	UpdateTimestamp metav1.Time               `json:"updateTimestamp"`
	Scanner         Scanner                   `json:"scanner"`
	Summary         KubeHunterSummary         `json:"summary"`
	Vulnerabilities []KubeHunterVulnerability `json:"vulnerabilities"`
}

func (*KubeHunterReportData) DeepCopy

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

func (*KubeHunterReportData) DeepCopyInto

func (in *KubeHunterReportData) DeepCopyInto(out *KubeHunterReportData)

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

type KubeHunterReportList

type KubeHunterReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []KubeHunterReport `json:"items"`
}

KubeHunterReportList is a list of KubeHunterReport resources.

func (*KubeHunterReportList) DeepCopy

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

func (*KubeHunterReportList) DeepCopyInto

func (in *KubeHunterReportList) DeepCopyInto(out *KubeHunterReportList)

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

func (*KubeHunterReportList) DeepCopyObject

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

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

type KubeHunterSummary

type KubeHunterSummary struct {
	HighCount    int `json:"highCount"`
	MediumCount  int `json:"mediumCount"`
	LowCount     int `json:"lowCount"`
	UnknownCount int `json:"unknownCount"`
}

func (*KubeHunterSummary) DeepCopy

func (in *KubeHunterSummary) DeepCopy() *KubeHunterSummary

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

func (*KubeHunterSummary) DeepCopyInto

func (in *KubeHunterSummary) DeepCopyInto(out *KubeHunterSummary)

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

type KubeHunterVulnerability

type KubeHunterVulnerability struct {
	Location      string   `json:"location"`      // e.g. "Local to Pod(kube-hunter-sj7zj)"
	ID            string   `json:"vid"`           // e.g. "KHV050"
	Category      string   `json:"category"`      // e.g. "Access Risk"
	Severity      Severity `json:"severity"`      // e.g. "low"
	Vulnerability string   `json:"vulnerability"` // e.g. "Read access to pod's service account token"
	Description   string   `json:"description"`   // e.g. "Accessing the pod service account token gives an attacker the option to use the server API"
	Evidence      string   `json:"evidence"`      // e.g. "eyJhbGciOiJSUzI1NiIMXA1..."
	Hunter        string   `json:"hunter"`        // e.g. "Access Secrets"
	AvdReference  string   `json:"avd_reference"` // e.g. "Khulnasoft vulnerability database reference"
}

func (*KubeHunterVulnerability) DeepCopy

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

func (*KubeHunterVulnerability) DeepCopyInto

func (in *KubeHunterVulnerability) DeepCopyInto(out *KubeHunterVulnerability)

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

type Mapping

type Mapping struct {
	Scanner string      `json:"scanner"`
	Checks  []SpecCheck `json:"checks"`
}

Mapping represent the scanner who perform the control check

func (*Mapping) DeepCopy

func (in *Mapping) DeepCopy() *Mapping

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

func (*Mapping) DeepCopyInto

func (in *Mapping) DeepCopyInto(out *Mapping)

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

type Registry

type Registry struct {
	// Server the FQDN of registry server.
	Server string `json:"server"`
}

Registry is a collection of repositories used to store Artifacts.

func (*Registry) DeepCopy

func (in *Registry) DeepCopy() *Registry

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

func (*Registry) DeepCopyInto

func (in *Registry) DeepCopyInto(out *Registry)

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

type ReportSpec

type ReportSpec struct {
	Name        string    `json:"name"`
	Description string    `json:"description"`
	Cron        string    `json:"cron"`
	Version     string    `json:"version"`
	Controls    []Control `json:"controls"`
}

ReportSpec represent the compliance specification

func (*ReportSpec) DeepCopy

func (in *ReportSpec) DeepCopy() *ReportSpec

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

func (*ReportSpec) DeepCopyInto

func (in *ReportSpec) DeepCopyInto(out *ReportSpec)

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

type ReportStatus

type ReportStatus struct {
	UpdateTimestamp metav1.Time              `json:"updateTimestamp"`
	Summary         ClusterComplianceSummary `json:"summary"`
	ControlChecks   []ControlCheck           `json:"controlCheck"`
}

func (*ReportStatus) DeepCopy

func (in *ReportStatus) DeepCopy() *ReportStatus

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

func (*ReportStatus) DeepCopyInto

func (in *ReportStatus) DeepCopyInto(out *ReportStatus)

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

type ResultDetails

type ResultDetails struct {
	Name      string        `json:"name,omitempty"`
	Namespace string        `json:"namespace,omitempty"`
	Msg       string        `json:"msg"`
	Status    ControlStatus `json:"status"`
}

func (*ResultDetails) DeepCopy

func (in *ResultDetails) DeepCopy() *ResultDetails

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

func (*ResultDetails) DeepCopyInto

func (in *ResultDetails) DeepCopyInto(out *ResultDetails)

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

type Scanner

type Scanner struct {
	// Name the name of the scanner.
	Name string `json:"name"`

	// Vendor the name of the vendor providing the scanner.
	Vendor string `json:"vendor"`

	// Version the version of the scanner.
	Version string `json:"version"`
}

Scanner is the spec for a scanner generating a security assessment report.

func (*Scanner) DeepCopy

func (in *Scanner) DeepCopy() *Scanner

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

func (*Scanner) DeepCopyInto

func (in *Scanner) DeepCopyInto(out *Scanner)

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

type ScannerCheckResult

type ScannerCheckResult struct {
	ObjectType  string          `json:"objectType"`
	ID          string          `json:"id,omitempty"`
	Remediation string          `json:"remediation,omitempty"`
	Details     []ResultDetails `json:"details"`
}

func (*ScannerCheckResult) DeepCopy

func (in *ScannerCheckResult) DeepCopy() *ScannerCheckResult

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

func (*ScannerCheckResult) DeepCopyInto

func (in *ScannerCheckResult) DeepCopyInto(out *ScannerCheckResult)

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

type Severity

type Severity string

Severity level of a vulnerability or a configuration audit check. +enum

const (
	SeverityCritical Severity = "CRITICAL"
	SeverityHigh     Severity = "HIGH"
	SeverityMedium   Severity = "MEDIUM"
	SeverityLow      Severity = "LOW"

	SeverityNone    Severity = "NONE"
	SeverityUnknown Severity = "UNKNOWN"
)
const (
	KubeHunterSeverityHigh    Severity = "high"
	KubeHunterSeverityMedium  Severity = "medium"
	KubeHunterSeverityLow     Severity = "low"
	KubeHunterSeverityUnknown Severity = "unknown"
)

func StringToSeverity

func StringToSeverity(name string) (Severity, error)

StringToSeverity returns the enum constant of Severity with the specified name. The name must match exactly an identifier used to declare an enum constant. (Extraneous whitespace characters are not permitted.)

Note that this method maps severity name `DANGER` to SeverityCritical and `WARNING` to SeverityLow. This logic is in place to support Polaris plugin, which has its own, proprietary severity levels.

type SpecCheck

type SpecCheck struct {
	ID string `json:"id"`
}

SpecCheck represent the scanner who perform the control check

func (*SpecCheck) DeepCopy

func (in *SpecCheck) DeepCopy() *SpecCheck

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

func (*SpecCheck) DeepCopyInto

func (in *SpecCheck) DeepCopyInto(out *SpecCheck)

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

type Vulnerability

type Vulnerability struct {
	// VulnerabilityID the vulnerability identifier.
	VulnerabilityID string `json:"vulnerabilityID"`

	// Resource is a vulnerable package, application, or library.
	Resource string `json:"resource"`

	// InstalledVersion indicates the installed version of the Resource.
	InstalledVersion string `json:"installedVersion"`

	// FixedVersion indicates the version of the Resource in which this vulnerability has been fixed.
	FixedVersion string `json:"fixedVersion"`

	Severity    Severity `json:"severity"`
	Title       string   `json:"title"`
	Description string   `json:"description,omitempty"`
	PrimaryLink string   `json:"primaryLink,omitempty"`
	Links       []string `json:"links"`
	Score       *float64 `json:"score,omitempty"`
}

Vulnerability is the spec for a vulnerability record.

func (*Vulnerability) DeepCopy

func (in *Vulnerability) DeepCopy() *Vulnerability

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

func (*Vulnerability) DeepCopyInto

func (in *Vulnerability) DeepCopyInto(out *Vulnerability)

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

type VulnerabilityReport

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

	// Report is the actual vulnerability report data.
	Report VulnerabilityReportData `json:"report"`
}

VulnerabilityReport is a specification for the VulnerabilityReport resource.

func (*VulnerabilityReport) DeepCopy

func (in *VulnerabilityReport) DeepCopy() *VulnerabilityReport

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

func (*VulnerabilityReport) DeepCopyInto

func (in *VulnerabilityReport) DeepCopyInto(out *VulnerabilityReport)

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

func (*VulnerabilityReport) DeepCopyObject

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

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

type VulnerabilityReportData

type VulnerabilityReportData struct {
	// UpdateTimestamp is a timestamp representing the server time in UTC when this report was updated.
	UpdateTimestamp metav1.Time `json:"updateTimestamp"`

	// Scanner is the scanner that generated this report.
	Scanner Scanner `json:"scanner"`

	// Registry is the registry the Artifact was pulled from.
	Registry Registry `json:"registry"`

	// Artifact is a container image scanned for Vulnerabilities.
	Artifact Artifact `json:"artifact"`

	// Summary is a summary of Vulnerability counts grouped by Severity.
	Summary VulnerabilitySummary `json:"summary"`

	// Vulnerabilities is a list of operating system (OS) or application software Vulnerability items found in the Artifact.
	Vulnerabilities []Vulnerability `json:"vulnerabilities"`
}

VulnerabilityReportData is the spec for the vulnerability scan result.

The spec follows the Pluggable Scanners API defined for Harbor. @see https://github.com/goharbor/pluggable-scanner-spec/blob/master/api/spec/scanner-adapter-openapi-v1.0.yaml

func (*VulnerabilityReportData) DeepCopy

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

func (*VulnerabilityReportData) DeepCopyInto

func (in *VulnerabilityReportData) DeepCopyInto(out *VulnerabilityReportData)

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

type VulnerabilityReportList

type VulnerabilityReportList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []VulnerabilityReport `json:"items"`
}

VulnerabilityReportList is a list of VulnerabilityReport resources.

func (*VulnerabilityReportList) DeepCopy

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

func (*VulnerabilityReportList) DeepCopyInto

func (in *VulnerabilityReportList) DeepCopyInto(out *VulnerabilityReportList)

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

func (*VulnerabilityReportList) DeepCopyObject

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

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

type VulnerabilitySummary

type VulnerabilitySummary struct {
	// CriticalCount is the number of vulnerabilities with Critical Severity.
	CriticalCount int `json:"criticalCount"`

	// HighCount is the number of vulnerabilities with High Severity.
	HighCount int `json:"highCount"`

	// MediumCount is the number of vulnerabilities with Medium Severity.
	MediumCount int `json:"mediumCount"`

	// LowCount is the number of vulnerabilities with Low Severity.
	LowCount int `json:"lowCount"`

	// UnknownCount is the number of vulnerabilities with unknown severity.
	UnknownCount int `json:"unknownCount"`

	// NoneCount is the number of packages without any vulnerability.
	NoneCount int `json:"noneCount"`
}

VulnerabilitySummary is a summary of Vulnerability counts grouped by Severity.

func (*VulnerabilitySummary) DeepCopy

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

func (*VulnerabilitySummary) DeepCopyInto

func (in *VulnerabilitySummary) DeepCopyInto(out *VulnerabilitySummary)

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