Skip to content

Commit

Permalink
Add special case prereqs to rego files
Browse files Browse the repository at this point in the history
  • Loading branch information
adhilto committed Jan 25, 2024
1 parent f5514b8 commit 7fc84ca
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 0 deletions.
6 changes: 6 additions & 0 deletions rego/Gmail.rego
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ DomainsWithDkim contains DkimRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.2.1v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_dkim_records"],
"Criticality": "Should",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutDkim, AllDomains),
"ActualValue": input.dkim_records,
Expand Down Expand Up @@ -129,6 +130,7 @@ DomainsWithSpf contains SpfRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.3.2v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_spf_records"],
"Criticality": "Shall",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutSpf, AllDomains),
"ActualValue": DomainsWithoutSpf,
Expand Down Expand Up @@ -157,6 +159,7 @@ DomainsWithDmarc contains DmarcRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.4.1v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_dmarc_records"],
"Criticality": "Shall",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutDmarc, AllDomains),
"ActualValue": input.dmarc_records,
Expand All @@ -180,6 +183,7 @@ DomainsWithPreject contains DmarcRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.4.2v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_dmarc_records"],
"Criticality": "Shall",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutPreject, AllDomains),
"ActualValue": input.dmarc_records,
Expand All @@ -203,6 +207,7 @@ DomainsWithDHSContact contains DmarcRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.4.3v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_dmarc_records"],
"Criticality": "Shall",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutDHSContact, AllDomains),
"ActualValue": input.dmarc_records,
Expand All @@ -226,6 +231,7 @@ DomainsWithAgencyContact contains DmarcRecord.domain if {

tests contains {
"PolicyId": "GWS.GMAIL.4.4v0.1",
"Prerequisites": ["directory/v1/domains/list", "get_dmarc_records"],
"Criticality": "Should",
"ReportDetails": ReportDetailsArray(Status, DomainsWithoutAgencyContact, AllDomains),
"ActualValue": input.dmarc_records,
Expand Down
2 changes: 2 additions & 0 deletions rego/Groups.rego
Original file line number Diff line number Diff line change
Expand Up @@ -356,6 +356,7 @@ NonCompliantGroups7_1 contains Group.name if {
# if there are no groups, it has to be safe.
tests contains {
"PolicyId": "GWS.GROUPS.7.1v0.1",
"Prerequisites": ["directory/v1/domains/list", "directory/v1/groups/list"],
"Criticality": "Should",
"ReportDetails": NoGroupsDetails(Groups),
"ActualValue": NoGroupsDetails(Groups),
Expand All @@ -370,6 +371,7 @@ if {
# if there are groups
tests contains {
"PolicyId": "GWS.GROUPS.7.1v0.1",
"Prerequisites": ["directory/v1/domains/list", "directory/v1/groups/list", "group-settings/v1/groups/get"],
"Criticality": "Should",
"ReportDetails": ReportDetailsGroups(NonCompliantGroups7_1),
"ActualValue": {"NonCompliantGroups": NonCompliantGroups7_1},
Expand Down
2 changes: 2 additions & 0 deletions scubagoggles/provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -453,13 +453,15 @@ def get_group_settings(self, services) -> dict:
for group in response.get('groups'):
email = group.get('email')
group_settings.append(group_service.groups().get(groupUniqueId=email).execute())
self.successful_calls.add("directory/v1/groups/list")
self.successful_calls.add("groups-settings/v1/groups/get")
return {'group_settings': group_settings}
except Exception as exc:
warnings.warn(
f"Exception thrown while getting group settings; outputs will be incorrect: {exc}",
RuntimeWarning
)
self.unsuccessful_calls.add("directory/v1/groups/list")
self.unsuccessful_calls.add("groups-settings/v1/groups/get")
return {'group_settings': []}

Expand Down

0 comments on commit 7fc84ca

Please sign in to comment.