CustomConfig

Define las propiedades en una configuración de módulo personalizado para las estadísticas del estado de la seguridad. Usa la configuración de módulos personalizados para crear detectores personalizados que generen resultados personalizados para los recursos que especifiques.

Representación JSON
{
  "predicate": {
    object (Expr)
  },
  "customOutput": {
    object (CustomOutputSpec)
  },
  "resourceSelector": {
    object (ResourceSelector)
  },
  "severity": enum (Severity),
  "description": string,
  "recommendation": string
}
Campos
predicate

object (Expr)

Opcional. Es la expresión de Common Expression Language (CEL) que se evaluará para generar resultados. Cuando la expresión se evalúa como true en un recurso, se genera un hallazgo.

customOutput

object (CustomOutputSpec)

Opcional. Propiedades de salida personalizadas

resourceSelector

object (ResourceSelector)

Opcional. Los tipos de recursos de Cloud Asset Inventory en los que opera el módulo personalizado Para obtener información sobre los tipos de recursos, consulta Tipos de recursos compatibles. Cada módulo personalizado puede especificar hasta 5 tipos de recursos.

severity

enum (Severity)

Opcional. Es la gravedad que se asignará a los resultados que genera el módulo.

description

string

Opcional. Es el texto que describe la vulnerabilidad o la configuración incorrecta que detecta el módulo personalizado. Esta explicación se muestra con cada instancia de hallazgo para ayudar a los investigadores a comprender el problema detectado. El texto debe estar entre comillas.

recommendation

string

Opcional. Una explicación de los pasos recomendados que los equipos de seguridad pueden seguir para resolver el problema detectado Esta explicación se muestra con cada hallazgo que genera este módulo.

Expr

Representa una expresión textual en la sintaxis de Common Expression Language (CEL). CEL es un lenguaje de expresión similar a C. La sintaxis y la semántica de CEL se documentan en https://github.com/google/cel-spec.

Ejemplo (comparación):

title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"

Ejemplo (igualdad):

title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"

Ejemplo (lógica):

title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"

Ejemplo (manipulación de datos):

title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"

El servicio que evalúa la expresión determina las variables y las funciones exactas a las que se puede hacer referencia en la expresión. Para obtener más información, consulta la documentación del servicio.

Representación JSON
{
  "expression": string,
  "title": string,
  "description": string,
  "location": string
}
Campos
expression

string

Representación textual de una expresión en la sintaxis de Common Expression Language.

title

string

Opcional. Título de la expresión (una string corta que describe el propósito de esta). Se puede usar, p. ej., en IU que permiten ingresar la expresión.

description

string

Opcional. Descripción de la expresión. Es un texto más largo que describe la expresión (p. ej., cuando se coloca el cursor sobre ella en una IU).

location

string

Opcional. Una string que indica la ubicación de la expresión para los informes de errores (p. ej., un nombre de archivo y una posición en este).

CustomOutputSpec

Es un conjunto de pares nombre-valor opcionales que definen propiedades de origen personalizadas para mostrar con cada hallazgo que genera el módulo personalizado. Las propiedades de fuente personalizadas que se definen aquí se incluyen en el resultado.

Representación JSON
{
  "properties": [
    {
      object (Property)
    }
  ]
}
Campos
properties[]

object (Property)

Opcional. Es una lista de propiedades de salida personalizadas que se agregarán al hallazgo.

Propiedad

Es un par nombre-valor individual que define una propiedad de fuente personalizada.

Representación JSON
{
  "name": string,
  "valueExpression": {
    object (Expr)
  }
}
Campos
name

string

Opcional. Es el nombre de la propiedad para el resultado personalizado.

valueExpression

object (Expr)

Opcional. Es la expresión CEL para el resultado personalizado. Se puede especificar una propiedad de recurso para que muestre el valor de la propiedad o una cadena de texto entre comillas.

ResourceSelector

Recurso para seleccionar el tipo de recurso.

Representación JSON
{
  "resourceTypes": [
    string
  ]
}
Campos
resourceTypes[]

string

Opcional. Los tipos de recursos en los que se ejecutará el detector.

Gravedad

Define las opciones de valores válidos para la gravedad de un hallazgo.

Enums
SEVERITY_UNSPECIFIED Valor predeterminado Este valor no se usa.
CRITICAL Gravedad crítica.
HIGH Gravedad alta.
MEDIUM Gravedad media.
LOW Gravedad baja.