- Resource: CloudControl
- Methods
Resource: CloudControl
A cloud control is a set of rules and associated metadata that you can use to define your organization's security or compliance intent.
JSON representation |
---|
{ "name": string, "majorRevisionId": string, "description": string, "displayName": string, "supportedEnforcementModes": [ enum ( |
Fields | |
---|---|
name |
Required. Identifier. The name of the cloud control, in the format |
majorRevisionId |
Output only. The major version of the cloud control, which is incremented in ascending order. |
description |
Optional. A description of the cloud control. The maximum length is 2000 characters. |
displayName |
Optional. The friendly name of the cloud control. The maximum length is 200 characters. |
supportedEnforcementModes[] |
Output only. The supported enforcement modes for the cloud control. |
parameterSpec[] |
Optional. The parameter specifications for the cloud control. |
rules[] |
Optional. The rules that you can enforce to meet your security or compliance intent. |
severity |
Optional. The severity of the findings that are generated by the cloud control. |
findingCategory |
Optional. The finding category for the cloud control findings. The maximum length is 255 characters. |
supportedCloudProviders[] |
Optional. The supported cloud providers. |
relatedFrameworks[] |
Output only. The frameworks that include this cloud control. |
remediationSteps |
Optional. The remediation steps for the cloud control findings. The maximum length is 400 characters. |
categories[] |
Optional. The categories for the cloud control. |
createTime |
Output only. The time that the cloud control was last updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
supportedTargetResourceTypes[] |
Optional. The target resource types that are supported by the cloud control. |
ParameterSpec
The parameter specification for the cloud control.
JSON representation |
---|
{ "name": string, "displayName": string, "description": string, "isRequired": boolean, "valueType": enum ( |
Fields | |
---|---|
name |
Required. The name of the parameter. |
displayName |
Optional. The friendly name of the parameter. The maximum length is 200 characters. |
description |
Optional. The description of the parameter. The maximum length is 2000 characters. |
isRequired |
Required. Whether the parameter is required. |
valueType |
Required. The parameter value type. |
defaultValue |
Optional. The default value of the parameter. |
substitutionRules[] |
Optional. The list of parameter substitutions. |
subParameters[] |
Optional. The parameter specification for |
validation |
Optional. The permitted set of values for the parameter. |
ValueType
The type of parameter value.
Enums | |
---|---|
VALUE_TYPE_UNSPECIFIED |
Default value. This value is unused. |
STRING |
A string value. |
BOOLEAN |
A boolean value. |
STRINGLIST |
A string list value. |
NUMBER |
A numeric value. |
ONEOF |
A oneOf value. |
ParameterSubstitutionRule
The parameter substitution rules.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field substitution_type . The type of substitution. substitution_type can be only one of the following: |
|
placeholderSubstitutionRule |
The placeholder substitution rule. |
attributeSubstitutionRule |
The attribute substitution rule. |
PlaceholderSubstitutionRule
The placeholder that's substituted in the rendered string.
JSON representation |
---|
{ "attribute": string } |
Fields | |
---|---|
attribute |
The fully qualified proto attribute path, in dot notation. |
AttributeSubstitutionRule
The attribute at the given path that's substituted entirely.
JSON representation |
---|
{ "attribute": string } |
Fields | |
---|---|
attribute |
The fully qualified proto attribute path, in dot notation. For example: |
Validation
The validation of the parameter.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field constraint . Defines validators for parameter values. constraint can be only one of the following: |
|
allowedValues |
The permitted set of values for the parameter. |
intRange |
The permitted range for numeric parameters. |
regexpPattern |
The regular expression for string parameters. |
AllowedValues
The allowed set of values for the parameter.
JSON representation |
---|
{
"values": [
{
object ( |
Fields | |
---|---|
values[] |
Required. The list of allowed values for the parameter. |
IntRange
The number range for number parameters.
JSON representation |
---|
{ "min": string, "max": string } |
Fields | |
---|---|
min |
Required. The minimum permitted value for the numeric parameter (inclusive). |
max |
Required. The maximum permitted value for the numeric parameter (inclusive). |
RegexpPattern
The regular expression (regex) validator for parameter values.
JSON representation |
---|
{ "pattern": string } |
Fields | |
---|---|
pattern |
Required. The regex pattern to match the values of the parameter with. |
Rule
A rule in the cloud control.
JSON representation |
---|
{ "description": string, "ruleActionTypes": [ enum ( |
Fields | |
---|---|
description |
Optional. The rule description. The maximum length is 2000 characters. |
ruleActionTypes[] |
Required. The functionality that's enabled by the rule. |
Union field implementation . The rule implementation. implementation can be only one of the following: |
|
celExpression |
The rule's logic expression in Common Expression Language (CEL). |
CELExpression
A Common Expression Language (CEL) expression that's used to create a rule.
JSON representation |
---|
{ "expression": string, // Union field |
Fields | |
---|---|
expression |
Required. The logical expression in CEL. The maximum length of the condition is 1000 characters. For more information, see CEL expression. |
Union field criteria . The criteria of the CEL expression. criteria can be only one of the following: |
|
resourceTypesValues |
The resource instance types on which this expression is defined. The format is |
RuleActionType
The action type of the rule.
Enums | |
---|---|
RULE_ACTION_TYPE_UNSPECIFIED |
Default value. This value is unused. |
RULE_ACTION_TYPE_PREVENTIVE |
The rule is intended to prevent non-compliance. |
RULE_ACTION_TYPE_DETECTIVE |
The rule is intended to detect non-compliance. |
RULE_ACTION_TYPE_AUDIT |
The rule is intended to audit non-compliance. |
Severity
The severity of the finding.
Enums | |
---|---|
SEVERITY_UNSPECIFIED |
Default value. This value is unused. |
CRITICAL |
A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. A critical threat is a threat that can access, modify, or delete data or execute unauthorized code within existing resources. |
HIGH |
A high-risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. A high-risk threat is a threat that can create new computational resources in an environment but can't access data or execute code in existing resources. |
MEDIUM |
A medium-risk vulnerability can be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. A medium-risk threat can cause operational impact but might not access data or execute unauthorized code. |
LOW |
A low-risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. A low-risk threat is a threat that has obtained minimal access to an environment but can't access data, execute code, or create resources. |
CloudControlCategory
The category for the cloud control.
Enums | |
---|---|
CLOUD_CONTROL_CATEGORY_UNSPECIFIED |
Default value. This value is unused. |
CC_CATEGORY_INFRASTRUCTURE |
The infrastructure security category. |
CC_CATEGORY_ARTIFICIAL_INTELLIGENCE |
The artificial intelligence category. |
CC_CATEGORY_PHYSICAL_SECURITY |
The physical security category. |
CC_CATEGORY_DATA_SECURITY |
The data security category. |
CC_CATEGORY_NETWORK_SECURITY |
The network security category. |
CC_CATEGORY_INCIDENT_MANAGEMENT |
The incident management category. |
CC_CATEGORY_IDENTITY_AND_ACCESS_MANAGEMENT |
The identity and access management category. |
CC_CATEGORY_ENCRYPTION |
The encryption category. |
CC_CATEGORY_LOGS_MANAGEMENT_AND_INFRASTRUCTURE |
The logs management and infrastructure category. |
CC_CATEGORY_HR_ADMIN_AND_PROCESSES |
The HR, admin, and processes category. |
CC_CATEGORY_THIRD_PARTY_AND_SUB_PROCESSOR_MANAGEMENT |
The third-party and sub-processor management category. |
CC_CATEGORY_LEGAL_AND_DISCLOSURES |
The legal and disclosures category. |
CC_CATEGORY_VULNERABILITY_MANAGEMENT |
The vulnerability management category. |
CC_CATEGORY_PRIVACY |
The privacy category. |
CC_CATEGORY_BCDR |
The business continuity and disaster recovery (BCDR) category. |
Methods |
|
---|---|
|
Creates a custom cloud control in a given parent resource. |
|
Deletes a custom cloud control, including all its major and minor revisions. |
|
Gets details about a cloud control. |
|
Lists the cloud controls (both built-in and custom) that are available in a given parent resource. |
|
Updates a custom cloud control. |