mirror of
https://github.com/kubescape/kubescape.git
synced 2026-03-30 07:20:58 +00:00
53 lines
1.3 KiB
Go
53 lines
1.3 KiB
Go
package cautils
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"github.com/armosec/opa-utils/reporthandling/apis"
|
|
)
|
|
|
|
var (
|
|
ImageVulnResources = []string{"ImageVulnerabilities"}
|
|
HostSensorResources = []string{"KubeletConfiguration",
|
|
"KubeletCommandLine",
|
|
"OsReleaseFile",
|
|
"KernelVersion",
|
|
"LinuxSecurityHardeningStatus",
|
|
"OpenPortsList",
|
|
"LinuxKernelVariables"}
|
|
CloudResources = []string{"ClusterDescribe"}
|
|
)
|
|
|
|
func MapArmoResource(armoResourceMap *ArmoResources, resources []string) []string {
|
|
var hostResources []string
|
|
for k := range *armoResourceMap {
|
|
for _, resource := range resources {
|
|
if strings.Contains(k, resource) {
|
|
hostResources = append(hostResources, k)
|
|
}
|
|
}
|
|
}
|
|
return hostResources
|
|
}
|
|
|
|
func MapHostResources(armoResourceMap *ArmoResources) []string {
|
|
return MapArmoResource(armoResourceMap, HostSensorResources)
|
|
}
|
|
|
|
func MapImageVulnResources(armoResourceMap *ArmoResources) []string {
|
|
return MapArmoResource(armoResourceMap, ImageVulnResources)
|
|
}
|
|
|
|
func MapCloudResources(armoResourceMap *ArmoResources) []string {
|
|
return MapArmoResource(armoResourceMap, CloudResources)
|
|
}
|
|
|
|
func SetInfoMapForResources(info string, resources []string, errorMap map[string]apis.StatusInfo) {
|
|
for _, resource := range resources {
|
|
errorMap[resource] = apis.StatusInfo{
|
|
InnerInfo: info,
|
|
InnerStatus: apis.StatusSkipped,
|
|
}
|
|
}
|
|
}
|