From d928ee442fd5ae5b2aa3c2dcd97f446b75abfef0 Mon Sep 17 00:00:00 2001 From: Daniel Barranquero <74871504+danibarranqueroo@users.noreply.github.com> Date: Thu, 16 Oct 2025 14:58:45 +0200 Subject: [PATCH] fix(gcp): no resource_name errors (#8928) --- prowler/CHANGELOG.md | 1 + .../compute_project_os_login_enabled.py | 5 +++++ .../iam/iam_audit_logs_enabled/iam_audit_logs_enabled.py | 5 +++++ .../iam_role_kms_enforce_separation_of_duties.py | 5 +++++ ...lter_and_alert_for_audit_configuration_changes_enabled.py | 5 +++++ ...filter_and_alert_for_bucket_permission_changes_enabled.py | 5 +++++ ...etric_filter_and_alert_for_custom_role_changes_enabled.py | 5 +++++ ...filter_and_alert_for_project_ownership_changes_enabled.py | 5 +++++ ...d_alert_for_sql_instance_configuration_changes_enabled.py | 5 +++++ ...filter_and_alert_for_vpc_firewall_rule_changes_enabled.py | 5 +++++ ...etric_filter_and_alert_for_vpc_network_changes_enabled.py | 5 +++++ ...filter_and_alert_for_vpc_network_route_changes_enabled.py | 5 +++++ .../logging/logging_sink_created/logging_sink_created.py | 5 +++++ 13 files changed, 61 insertions(+) diff --git a/prowler/CHANGELOG.md b/prowler/CHANGELOG.md index d097baaf59..c55b4850dc 100644 --- a/prowler/CHANGELOG.md +++ b/prowler/CHANGELOG.md @@ -45,6 +45,7 @@ All notable changes to the **Prowler SDK** are documented in this file. - Prowler ThreatScore scoring calculation CLI [(#8582)](https://github.com/prowler-cloud/prowler/pull/8582) - Add missing attributes for Mitre Attack AWS, Azure and GCP [(#8907)](https://github.com/prowler-cloud/prowler/pull/8907) - Fix KeyError in CloudSQL and Monitoring services in GCP provider [(#8909)](https://github.com/prowler-cloud/prowler/pull/8909) +- Fix ResourceName in GCP provider [(#8928)](https://github.com/prowler-cloud/prowler/pull/8928) --- diff --git a/prowler/providers/gcp/services/compute/compute_project_os_login_enabled/compute_project_os_login_enabled.py b/prowler/providers/gcp/services/compute/compute_project_os_login_enabled/compute_project_os_login_enabled.py index 4ed96e036e..5335379458 100644 --- a/prowler/providers/gcp/services/compute/compute_project_os_login_enabled/compute_project_os_login_enabled.py +++ b/prowler/providers/gcp/services/compute/compute_project_os_login_enabled/compute_project_os_login_enabled.py @@ -11,6 +11,11 @@ class compute_project_os_login_enabled(Check): resource=compute_client.projects[project.id], project_id=project.id, location=compute_client.region, + resource_name=( + compute_client.projects[project.id].name + if compute_client.projects[project.id].name + else "GCP Project" + ), ) report.status = "PASS" report.status_extended = f"Project {project.id} has OS Login enabled." diff --git a/prowler/providers/gcp/services/iam/iam_audit_logs_enabled/iam_audit_logs_enabled.py b/prowler/providers/gcp/services/iam/iam_audit_logs_enabled/iam_audit_logs_enabled.py index bec0cb851f..1f3e1bb993 100644 --- a/prowler/providers/gcp/services/iam/iam_audit_logs_enabled/iam_audit_logs_enabled.py +++ b/prowler/providers/gcp/services/iam/iam_audit_logs_enabled/iam_audit_logs_enabled.py @@ -13,6 +13,11 @@ class iam_audit_logs_enabled(Check): resource=cloudresourcemanager_client.projects[project.id], project_id=project.id, location=cloudresourcemanager_client.region, + resource_name=( + cloudresourcemanager_client.projects[project.id].name + if cloudresourcemanager_client.projects[project.id].name + else "GCP Project" + ), ) report.status = "PASS" report.status_extended = f"Audit Logs are enabled for project {project.id}." diff --git a/prowler/providers/gcp/services/iam/iam_role_kms_enforce_separation_of_duties/iam_role_kms_enforce_separation_of_duties.py b/prowler/providers/gcp/services/iam/iam_role_kms_enforce_separation_of_duties/iam_role_kms_enforce_separation_of_duties.py index 7450b4b933..b2772b2d0c 100644 --- a/prowler/providers/gcp/services/iam/iam_role_kms_enforce_separation_of_duties/iam_role_kms_enforce_separation_of_duties.py +++ b/prowler/providers/gcp/services/iam/iam_role_kms_enforce_separation_of_duties/iam_role_kms_enforce_separation_of_duties.py @@ -15,6 +15,11 @@ class iam_role_kms_enforce_separation_of_duties(Check): resource=cloudresourcemanager_client.projects[project], project_id=project, location=cloudresourcemanager_client.region, + resource_name=( + cloudresourcemanager_client.projects[project].name + if cloudresourcemanager_client.projects[project].name + else "GCP Project" + ), ) report.status = "PASS" report.status_extended = f"Principle of separation of duties was enforced for KMS-Related Roles in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled.py index fd48f9dd4b..4654be4d29 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_audit_configuration_changes_enabled.py @@ -40,6 +40,11 @@ class logging_log_metric_filter_and_alert_for_audit_configuration_changes_enable resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled.py index db9ea7e95e..c6cca1fab2 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled/logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_bucket_permission_changes_enabled( resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled.py index 13a2d45737..1e6584e5fb 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled/logging_log_metric_filter_and_alert_for_custom_role_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_custom_role_changes_enabled(Check) resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled.py index e56feb3318..9f3cb38d29 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled/logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_project_ownership_changes_enabled( resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled.py index 5e37003409..3e499db10a 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled/logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes_enabled.py @@ -37,6 +37,11 @@ class logging_log_metric_filter_and_alert_for_sql_instance_configuration_changes resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled.py index 754f651d4d..e2b7cdcc13 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_vpc_firewall_rule_changes_enabled( resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled.py index 5073b59879..c8b15ce1ee 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_vpc_network_changes_enabled(Check) resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled.py b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled.py index 9b78bc314a..f840d75852 100644 --- a/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled.py +++ b/prowler/providers/gcp/services/logging/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled/logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled.py @@ -38,6 +38,11 @@ class logging_log_metric_filter_and_alert_for_vpc_network_route_changes_enabled( resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no log metric filters or alerts associated in project {project}." diff --git a/prowler/providers/gcp/services/logging/logging_sink_created/logging_sink_created.py b/prowler/providers/gcp/services/logging/logging_sink_created/logging_sink_created.py index a72d45e07e..e57ff0e671 100644 --- a/prowler/providers/gcp/services/logging/logging_sink_created/logging_sink_created.py +++ b/prowler/providers/gcp/services/logging/logging_sink_created/logging_sink_created.py @@ -17,6 +17,11 @@ class logging_sink_created(Check): resource=logging_client.projects[project], project_id=project, location=logging_client.region, + resource_name=( + logging_client.projects[project].name + if logging_client.projects[project].name + else "GCP Project" + ), ) report.status = "FAIL" report.status_extended = f"There are no logging sinks to export copies of all the log entries in project {project}."