Skip to content

Commit b58bc04

Browse files
committed
fix(googleworkspace): use per-service resources
1 parent 361819b commit b58bc04

12 files changed

Lines changed: 53 additions & 30 deletions

File tree

prowler/providers/googleworkspace/services/chat/chat_apps_installation_disabled/chat_apps_installation_disabled.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
apps_enabled = chat_client.policies.enable_apps

prowler/providers/googleworkspace/services/chat/chat_external_file_sharing_disabled/chat_external_file_sharing_disabled.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
external_sharing = chat_client.policies.external_file_sharing

prowler/providers/googleworkspace/services/chat/chat_external_messaging_restricted/chat_external_messaging_restricted.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
allow_external = chat_client.policies.allow_external_chat

prowler/providers/googleworkspace/services/chat/chat_external_spaces_restricted/chat_external_spaces_restricted.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
spaces_enabled = chat_client.policies.external_spaces_enabled

prowler/providers/googleworkspace/services/chat/chat_incoming_webhooks_disabled/chat_incoming_webhooks_disabled.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
webhooks_enabled = chat_client.policies.enable_webhooks

prowler/providers/googleworkspace/services/chat/chat_internal_file_sharing_disabled/chat_internal_file_sharing_disabled.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ def execute(self) -> List[CheckReportGoogleWorkspace]:
1818
if chat_client.policies_fetched:
1919
report = CheckReportGoogleWorkspace(
2020
metadata=self.metadata(),
21-
resource=chat_client.provider.domain_resource,
21+
resource=chat_client.policies,
22+
resource_id="chatPolicies",
23+
resource_name="Chat Policies",
24+
customer_id=chat_client.provider.identity.customer_id,
2225
)
2326

2427
internal_sharing = chat_client.policies.internal_file_sharing

tests/providers/googleworkspace/services/chat/chat_apps_installation_disabled/chat_apps_installation_disabled_test.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from prowler.providers.googleworkspace.services.chat.chat_service import ChatPolicies
44
from tests.providers.googleworkspace.googleworkspace_fixtures import (
55
CUSTOMER_ID,
6-
DOMAIN,
76
set_mocked_googleworkspace_provider,
87
)
98

@@ -35,10 +34,10 @@ def test_pass(self):
3534
assert len(findings) == 1
3635
assert findings[0].status == "PASS"
3736
assert "disabled" in findings[0].status_extended
38-
assert findings[0].resource_name == DOMAIN
39-
assert findings[0].resource_id == CUSTOMER_ID
37+
assert findings[0].resource_name == "Chat Policies"
38+
assert findings[0].resource_id == "chatPolicies"
4039
assert findings[0].customer_id == CUSTOMER_ID
41-
assert findings[0].resource == mock_provider.domain_resource.dict()
40+
assert findings[0].resource == ChatPolicies(enable_apps=False).dict()
4241

4342
def test_fail_enabled(self):
4443
mock_provider = set_mocked_googleworkspace_provider()

tests/providers/googleworkspace/services/chat/chat_external_file_sharing_disabled/chat_external_file_sharing_disabled_test.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from prowler.providers.googleworkspace.services.chat.chat_service import ChatPolicies
44
from tests.providers.googleworkspace.googleworkspace_fixtures import (
55
CUSTOMER_ID,
6-
DOMAIN,
76
set_mocked_googleworkspace_provider,
87
)
98

@@ -35,10 +34,13 @@ def test_pass(self):
3534
assert len(findings) == 1
3635
assert findings[0].status == "PASS"
3736
assert "disabled" in findings[0].status_extended
38-
assert findings[0].resource_name == DOMAIN
39-
assert findings[0].resource_id == CUSTOMER_ID
37+
assert findings[0].resource_name == "Chat Policies"
38+
assert findings[0].resource_id == "chatPolicies"
4039
assert findings[0].customer_id == CUSTOMER_ID
41-
assert findings[0].resource == mock_provider.domain_resource.dict()
40+
assert (
41+
findings[0].resource
42+
== ChatPolicies(external_file_sharing="NO_FILES").dict()
43+
)
4244

4345
def test_fail_all_files(self):
4446
mock_provider = set_mocked_googleworkspace_provider()

tests/providers/googleworkspace/services/chat/chat_external_messaging_restricted/chat_external_messaging_restricted_test.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from prowler.providers.googleworkspace.services.chat.chat_service import ChatPolicies
44
from tests.providers.googleworkspace.googleworkspace_fixtures import (
55
CUSTOMER_ID,
6-
DOMAIN,
76
set_mocked_googleworkspace_provider,
87
)
98

@@ -35,10 +34,12 @@ def test_pass_external_chat_disabled(self):
3534
assert len(findings) == 1
3635
assert findings[0].status == "PASS"
3736
assert "disabled" in findings[0].status_extended
38-
assert findings[0].resource_name == DOMAIN
39-
assert findings[0].resource_id == CUSTOMER_ID
37+
assert findings[0].resource_name == "Chat Policies"
38+
assert findings[0].resource_id == "chatPolicies"
4039
assert findings[0].customer_id == CUSTOMER_ID
41-
assert findings[0].resource == mock_provider.domain_resource.dict()
40+
assert (
41+
findings[0].resource == ChatPolicies(allow_external_chat=False).dict()
42+
)
4243

4344
def test_pass_trusted_domains(self):
4445
mock_provider = set_mocked_googleworkspace_provider()

tests/providers/googleworkspace/services/chat/chat_external_spaces_restricted/chat_external_spaces_restricted_test.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from prowler.providers.googleworkspace.services.chat.chat_service import ChatPolicies
44
from tests.providers.googleworkspace.googleworkspace_fixtures import (
55
CUSTOMER_ID,
6-
DOMAIN,
76
set_mocked_googleworkspace_provider,
87
)
98

@@ -35,10 +34,13 @@ def test_pass_spaces_disabled(self):
3534
assert len(findings) == 1
3635
assert findings[0].status == "PASS"
3736
assert "disabled" in findings[0].status_extended
38-
assert findings[0].resource_name == DOMAIN
39-
assert findings[0].resource_id == CUSTOMER_ID
37+
assert findings[0].resource_name == "Chat Policies"
38+
assert findings[0].resource_id == "chatPolicies"
4039
assert findings[0].customer_id == CUSTOMER_ID
41-
assert findings[0].resource == mock_provider.domain_resource.dict()
40+
assert (
41+
findings[0].resource
42+
== ChatPolicies(external_spaces_enabled=False).dict()
43+
)
4244

4345
def test_pass_trusted_domains(self):
4446
mock_provider = set_mocked_googleworkspace_provider()

0 commit comments

Comments
 (0)