|
1993 | 1993 | } |
1994 | 1994 | } |
1995 | 1995 | }, |
1996 | | - "revision": "20240927", |
| 1996 | + "revision": "20241004", |
1997 | 1997 | "rootUrl": "https://securitycenter.googleapis.com/", |
1998 | 1998 | "schemas": { |
1999 | 1999 | "Access": { |
|
2291 | 2291 | "description": "Represents an Azure resource group.", |
2292 | 2292 | "id": "AzureResourceGroup", |
2293 | 2293 | "properties": { |
| 2294 | + "id": { |
| 2295 | + "description": "The ID of the Azure resource group.", |
| 2296 | + "type": "string" |
| 2297 | + }, |
2294 | 2298 | "name": { |
2295 | 2299 | "description": "The name of the Azure resource group. This is not a UUID.", |
2296 | 2300 | "type": "string" |
|
2385 | 2389 | }, |
2386 | 2390 | "type": "object" |
2387 | 2391 | }, |
| 2392 | + "CelPolicySpec": { |
| 2393 | + "description": "YAML-based rule that uses CEL, which supports the declaration of variables and a filtering predicate. A vulnerable resource is emitted if the evaluation is false. Given: 1) the resource types as: - resource_types: \"compute.googleapis.com/Instance\" - resource_types: \"compute.googleapis.com/Firewall\" 2) the CEL policy spec as: name: bad_instance resource_filters: - name: instance resource_type: compute.googleapis.com/Instance filter: > instance.status == 'RUNNING' && 'public' in instance.tags.items - name: firewall resource_type: compute.googleapis.com/Firewall filter: > firewall.direction == 'INGRESS' && !firewall.disabled && firewall.allowed.exists(rule, rule.IPProtocol.upperAscii() in ['TCP', 'ALL'] && rule.ports.exists(port, network.portsInRange(port, '11-256'))) rule: match: - predicate: > instance.networkInterfaces.exists(net, firewall.network == net.network) output: > {'message': 'Compute instance with publicly accessible ports', 'instance': instance.name} Users are able to join resource types together using the exact format as Kubernetes Validating Admission policies.", |
| 2394 | + "id": "CelPolicySpec", |
| 2395 | + "properties": { |
| 2396 | + "spec": { |
| 2397 | + "description": "The CEL policy to evaluate to produce findings. A finding is generated when the policy validation evaluates to false.", |
| 2398 | + "type": "string" |
| 2399 | + } |
| 2400 | + }, |
| 2401 | + "type": "object" |
| 2402 | + }, |
2388 | 2403 | "CloudArmor": { |
2389 | 2404 | "description": "Fields related to Google Cloud Armor findings.", |
2390 | 2405 | "id": "CloudArmor", |
|
3782 | 3797 | "description": "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.", |
3783 | 3798 | "id": "GoogleCloudSecuritycenterV1CustomConfig", |
3784 | 3799 | "properties": { |
| 3800 | + "celPolicy": { |
| 3801 | + "$ref": "CelPolicySpec", |
| 3802 | + "description": "The CEL policy spec attached to the custom module." |
| 3803 | + }, |
3785 | 3804 | "customOutput": { |
3786 | 3805 | "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec", |
3787 | 3806 | "description": "Custom output properties." |
|
4864 | 4883 | "description": "Represents an Azure resource group.", |
4865 | 4884 | "id": "GoogleCloudSecuritycenterV2AzureResourceGroup", |
4866 | 4885 | "properties": { |
| 4886 | + "id": { |
| 4887 | + "description": "The ID of the Azure resource group.", |
| 4888 | + "type": "string" |
| 4889 | + }, |
4867 | 4890 | "name": { |
4868 | 4891 | "description": "The name of the Azure resource group. This is not a UUID.", |
4869 | 4892 | "type": "string" |
|
0 commit comments