CustomConfig

Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify.

JSON representation
{
  "predicate": {
    object (Expr)
  },
  "customOutput": {
    object (CustomOutputSpec)
  },
  "resourceSelector": {
    object (ResourceSelector)
  },
  "severity": enum (Severity),
  "description": string,
  "recommendation": string
}
Fields
predicate

object (Expr)

The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated.

customOutput

object (CustomOutputSpec)

Custom output properties.

resourceSelector

object (ResourceSelector)

The resource types that the custom module operates on. Each custom module can specify up to 5 resource types.

severity

enum (Severity)

The severity to assign to findings generated by the module.

description

string

Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks.

recommendation

string

An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the nextSteps property of the finding JSON.

CustomOutputSpec

A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under sourceProperties.

JSON representation
{
  "properties": [
    {
      object (Property)
    }
  ]
}
Fields
properties[]

object (Property)

A list of custom output properties to add to the finding.

Property

An individual name-value pair that defines a custom source property.

JSON representation
{
  "name": string,
  "valueExpression": {
    object (Expr)
  }
}
Fields
name

string

Name of the property for the custom output.

valueExpression

object (Expr)

The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks.

ResourceSelector

Resource for selecting resource type.

JSON representation
{
  "resourceTypes": [
    string
  ]
}
Fields
resourceTypes[]

string

The resource types to run the detector on.

Severity

Defines the valid value options for the severity of a finding.

Enums
SEVERITY_UNSPECIFIED Unspecified severity.
CRITICAL Critical severity.
HIGH High severity.
MEDIUM Medium severity.
LOW Low severity.