From f1f61249e0e660935b792941da4a7bcaab28925b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rub=C3=A9n=20De=20la=20Torre=20Vico?= Date: Tue, 14 Jan 2025 17:32:40 +0100 Subject: [PATCH] feat(azure): include resource metadata in Check_Report_Azure (#6505) --- prowler/lib/check/models.py | 34 ++++++++++++++++++++++++++++------ 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/prowler/lib/check/models.py b/prowler/lib/check/models.py index 553636274b..8c91164c60 100644 --- a/prowler/lib/check/models.py +++ b/prowler/lib/check/models.py @@ -5,7 +5,7 @@ import sys from abc import ABC, abstractmethod from dataclasses import dataclass from enum import Enum -from typing import Set +from typing import Any, Set from pydantic import BaseModel, ValidationError, validator @@ -453,12 +453,34 @@ class Check_Report_Azure(Check_Report): subscription: str location: str - def __init__(self, metadata): - super().__init__(metadata) - self.resource_name = "" - self.resource_id = "" + def __init__(self, metadata: dict, resource_metadata: Any = None) -> None: + """Initialize the Azure Check's finding information. + + Args: + metadata: The metadata of the check. + resource_metadata: Basic information about the resource. Defaults to None. + """ + super().__init__(metadata, resource_metadata) + self.resource_name = ( + resource_metadata.name + if hasattr(resource_metadata, "name") + else ( + resource_metadata.resource_name + if hasattr(resource_metadata, "resource_name") + else "" + ) + ) + self.resource_id = ( + resource_metadata.id + if hasattr(resource_metadata, "id") + else ( + resource_metadata.resource_id + if hasattr(resource_metadata, "resource_id") + else "" + ) + ) self.subscription = "" - self.location = "global" + self.location = getattr(resource_metadata, "location", "global") @dataclass