Skip to content

Commit fef9fcf

Browse files
Feature/separate queries inside folders (#1653)
1 parent 2f08308 commit fef9fcf

File tree

17 files changed

+39
-37
lines changed

17 files changed

+39
-37
lines changed

assets/queries/ansible/s3_bucket_rules_with_awskms/metadata.json renamed to assets/queries/ansible/aws/s3_bucket_rules_with_awskms/metadata.json

File renamed without changes.

assets/queries/ansible/s3_bucket_rules_with_awskms/query.rego renamed to assets/queries/ansible/aws/s3_bucket_rules_with_awskms/query.rego

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ CxPolicy [ result ] {
1212

1313
result := {
1414
"documentId": document.id,
15-
"searchKey": sprintf("name=%s.{{amazon.aws.s3_bucket}}.encryption", [s3_bucket.name]),
15+
"searchKey": sprintf("name=%s.{{amazon.aws.s3_bucket}}.encryption", [tasks[t].name]),
1616
"issueType": "MissingAttribute",
1717
"keyExpectedValue": "amazon.aws.s3_bucket.encryption_key_id is defined",
1818
"keyActualValue": "amazon.aws.s3_bucket.encryption_key_id is undefined"
@@ -31,7 +31,7 @@ CxPolicy [ result ] {
3131

3232
result := {
3333
"documentId": document.id,
34-
"searchKey": sprintf("name=%s.{{amazon.aws.s3_bucket}}.encryption", [s3_bucket.name]),
34+
"searchKey": sprintf("name=%s.{{amazon.aws.s3_bucket}}.encryption", [tasks[t].name]),
3535
"issueType": "IncorrectValue",
3636
"keyExpectedValue": "amazon.aws.s3_bucket.encryption_key_id is defined",
3737
"keyActualValue": "amazon.aws.s3_bucket.encryption_key_id is empty or null"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
- name: mys3Bucket
3+
amazon.aws.s3_bucket:
4+
name: mys3bucket
5+
state: present
6+
encryption: "AES256"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
- name: mys3Bucket
3+
amazon.aws.s3_bucket:
4+
name: mys3bucket
5+
state: present
6+
encryption: "aws:kms"

assets/queries/ansible/s3_bucket_rules_with_awskms/test/positive_expected_result.json renamed to assets/queries/ansible/aws/s3_bucket_rules_with_awskms/test/positive_expected_result.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
{
33
"queryName": "S3 Bucket Rules With Master Key Id Null",
44
"severity": "HIGH",
5-
"line": 3
5+
"line": 6
66
}
77
]

assets/queries/ansible/s3_bucket_rules_with_awskms/test/negative.yaml

Lines changed: 0 additions & 5 deletions
This file was deleted.

assets/queries/ansible/s3_bucket_rules_with_awskms/test/positive.yaml

Lines changed: 0 additions & 5 deletions
This file was deleted.

assets/queries/k8s/resource_with_allow_privilege_escalation/image_defined/metadata.json renamed to assets/queries/k8s/image_defined/metadata.json

File renamed without changes.

assets/queries/k8s/resource_with_allow_privilege_escalation/image_defined/query.rego renamed to assets/queries/k8s/image_defined/query.rego

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,45 +3,45 @@ package Cx
33
CxPolicy [ result ] {
44
document := input.document
55
metadata := document[i].metadata
6-
spec := document[i].spec
6+
spec := document[i].spec
77
containers := spec.containers
8-
images = object.get(containers[c], "image", "undefined") != "undefined"
8+
images = object.get(containers[c], "image", "undefined") != "undefined"
99
not images
10-
10+
1111
result := {
1212
"documentId": input.document[i].id,
13-
"searchKey": sprintf("metadata.name=%s.spec.containers[%d].image", [metadata.name, c]),
13+
"searchKey": sprintf("metadata.name=%s.spec.containers.name=%s", [metadata.name, containers[c].name]),
1414
"issueType": "MissingAttribute",
15-
"keyExpectedValue": sprintf("metadata.name=%s.spec.containers[%d].image is defined", [metadata.name, c]),
16-
"keyActualValue": sprintf("metadata.name=%s.spec.containers[%d].image is undefined", [metadata.name, c])
15+
"keyExpectedValue": sprintf("metadata.name=%s.spec.containers.name=%s.image is defined", [metadata.name, containers[c].name]),
16+
"keyActualValue": sprintf("metadata.name=%s.spec.containers.name=%s.image is undefined", [metadata.name, containers[c].name])
1717
}
1818
}
1919

2020
CxPolicy [ result ] {
2121
document := input.document
2222
metadata := document[i].metadata
23-
spec := document[i].spec
23+
spec := document[i].spec
2424
containers := spec.containers
2525
images = containers[c].image
26-
check_content(images)
27-
26+
check_content(images)
27+
2828
result := {
2929
"documentId": input.document[i].id,
30-
"searchKey": sprintf("metadata.name=%s.spec.containers[%d].image", [metadata.name, c]),
30+
"searchKey": sprintf("metadata.name=%s.spec.containers.name=%s.image", [metadata.name, containers[c].name]),
3131
"issueType": "MissingAttribute",
32-
"keyExpectedValue": sprintf("metadata.name=%s.spec.containers[%d].image is not null, empty or latest", [metadata.name, c]),
33-
"keyActualValue": sprintf("metadata.name=%s.spec.containers[%d].image is null, empty or latest", [metadata.name, c])
32+
"keyExpectedValue": sprintf("metadata.name=%s.spec.containers.name=%s.image is not null, empty or latest", [metadata.name, containers[c].name]),
33+
"keyActualValue": sprintf("metadata.name=%s.spec.containers.name=%s.image is null, empty or latest", [metadata.name, containers[c].name])
3434
}
3535
}
3636

37-
check_content(images) {
37+
check_content(images) {
3838
images == ""
3939
}
4040

41-
check_content(images) {
41+
check_content(images) {
4242
images == "latest"
4343
}
4444

45-
check_content(images) {
45+
check_content(images) {
4646
images == null
4747
}

assets/queries/k8s/resource_with_allow_privilege_escalation/image_defined/test/negative.yaml renamed to assets/queries/k8s/image_defined/test/negative.yaml

File renamed without changes.

0 commit comments

Comments
 (0)