diff --git a/prowler/lib/check/models.py b/prowler/lib/check/models.py index f23873dd3e..636d16be49 100644 --- a/prowler/lib/check/models.py +++ b/prowler/lib/check/models.py @@ -148,12 +148,14 @@ class Check_Report_Azure(Check_Report): resource_name: str resource_id: str subscription: str + location: str def __init__(self, metadata): super().__init__(metadata) self.resource_name = "" self.resource_id = "" self.subscription = "" + self.location = "global" @dataclass diff --git a/prowler/lib/outputs/common.py b/prowler/lib/outputs/common.py index 9b2575ce46..e8e3b96981 100644 --- a/prowler/lib/outputs/common.py +++ b/prowler/lib/outputs/common.py @@ -52,8 +52,7 @@ def generate_provider_output(provider, finding, csv_data) -> FindingOutput: csv_data["account_name"] = finding.subscription csv_data["resource_name"] = finding.resource_name csv_data["resource_uid"] = finding.resource_id - # TODO: pending to get location from Azure resources (finding.location) - csv_data["region"] = "" + csv_data["region"] = finding.location elif provider.type == "gcp": csv_data["auth_method"] = f"Principal: {csv_data['auth_method']}" diff --git a/prowler/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled.py b/prowler/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled.py index 877bc8df97..b4da8cda4c 100644 --- a/prowler/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled.py +++ b/prowler/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled.py @@ -13,6 +13,7 @@ class aks_cluster_rbac_enabled(Check): report.subscription = subscription_name report.resource_name = cluster.name report.resource_id = cluster_id + report.location = cluster.location report.status_extended = f"RBAC is enabled for cluster '{cluster.name}' in subscription '{subscription_name}'." if not cluster.rbac_enabled: diff --git a/prowler/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes.py b/prowler/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes.py index e8ac6eb27d..6a44d4ac74 100644 --- a/prowler/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes.py +++ b/prowler/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes.py @@ -13,6 +13,7 @@ class aks_clusters_created_with_private_nodes(Check): report.subscription = subscription_name report.resource_name = cluster.name report.resource_id = cluster_id + report.location = cluster.location report.status_extended = f"Cluster '{cluster.name}' was created with private nodes in subscription '{subscription_name}'" for agent_pool in cluster.agent_pool_profiles: diff --git a/prowler/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled.py b/prowler/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled.py index afb699993f..1fae85653a 100644 --- a/prowler/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled.py +++ b/prowler/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled.py @@ -13,6 +13,7 @@ class aks_clusters_public_access_disabled(Check): report.subscription = subscription_name report.resource_name = cluster.name report.resource_id = cluster_id + report.location = cluster.location report.status_extended = f"Public access to nodes is enabled for cluster '{cluster.name}' in subscription '{subscription_name}'" if cluster.private_fqdn: diff --git a/prowler/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled.py b/prowler/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled.py index 83ebaf22e3..d1cfafc89a 100644 --- a/prowler/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled.py +++ b/prowler/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled.py @@ -13,6 +13,7 @@ class aks_network_policy_enabled(Check): report.subscription = subscription_name report.resource_name = cluster.name report.resource_id = cluster_id + report.location = cluster.location report.status_extended = f"Network policy is enabled for cluster '{cluster.name}' in subscription '{subscription_name}'." if not getattr(cluster, "network_policy", False): diff --git a/prowler/providers/azure/services/aks/aks_service.py b/prowler/providers/azure/services/aks/aks_service.py index e89ca61703..b1c1a239c5 100644 --- a/prowler/providers/azure/services/aks/aks_service.py +++ b/prowler/providers/azure/services/aks/aks_service.py @@ -31,6 +31,7 @@ class AKS(AzureService): name=cluster.name, public_fqdn=cluster.fqdn, private_fqdn=cluster.private_fqdn, + location=cluster.location, network_policy=( getattr( cluster.network_profile, @@ -63,3 +64,4 @@ class Cluster: network_policy: str agent_pool_profiles: list[ManagedClusterAgentPoolProfile] rbac_enabled: bool + location: str diff --git a/prowler/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on.py b/prowler/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on.py index 2ff66971a9..953d3f9cb2 100644 --- a/prowler/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on.py +++ b/prowler/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on.py @@ -16,6 +16,7 @@ class app_client_certificates_on(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"Clients are required to present a certificate for app '{app_name}' in subscription '{subscription_name}'." if app.client_cert_mode != "Required": diff --git a/prowler/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up.py b/prowler/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up.py index 1d8eb24328..86c7b884d6 100644 --- a/prowler/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up.py +++ b/prowler/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up.py @@ -16,6 +16,7 @@ class app_ensure_auth_is_set_up(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"Authentication is set up for app '{app_name}' in subscription '{subscription_name}'." if not app.auth_enabled: diff --git a/prowler/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https.py b/prowler/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https.py index ada2f7dbfe..432ae1fb40 100644 --- a/prowler/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https.py +++ b/prowler/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https.py @@ -16,6 +16,7 @@ class app_ensure_http_is_redirected_to_https(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"HTTP is redirected to HTTPS for app '{app_name}' in subscription '{subscription_name}'." if not app.https_only: diff --git a/prowler/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest.py b/prowler/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest.py index 04919aff61..3fef96f4f8 100644 --- a/prowler/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest.py +++ b/prowler/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest.py @@ -22,6 +22,7 @@ class app_ensure_java_version_is_latest(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location java_latest_version = app_client.audit_config.get( "java_latest_version", "17" ) diff --git a/prowler/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest.py b/prowler/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest.py index 5e9f4f4e57..865ae6b35f 100644 --- a/prowler/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest.py +++ b/prowler/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest.py @@ -21,6 +21,7 @@ class app_ensure_php_version_is_latest(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location php_latest_version = app_client.audit_config.get( "php_latest_version", "8.2" diff --git a/prowler/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest.py b/prowler/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest.py index 852a761b6a..8df1fa4c1b 100644 --- a/prowler/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest.py +++ b/prowler/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest.py @@ -21,6 +21,7 @@ class app_ensure_python_version_is_latest(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location python_latest_version = app_client.audit_config.get( "python_latest_version", "3.12" ) diff --git a/prowler/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20.py b/prowler/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20.py index 7f6e7e8d40..eb81378f0f 100644 --- a/prowler/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20.py +++ b/prowler/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20.py @@ -16,6 +16,7 @@ class app_ensure_using_http20(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"HTTP/2.0 is not enabled for app '{app_name}' in subscription '{subscription_name}'." if app.configurations and getattr( diff --git a/prowler/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled.py b/prowler/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled.py index ef5a3036ba..9f817c2a06 100644 --- a/prowler/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled.py +++ b/prowler/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled.py @@ -16,6 +16,7 @@ class app_ftp_deployment_disabled(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"FTP is enabled for app '{app_name}' in subscription '{subscription_name}'." if ( diff --git a/prowler/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12.py b/prowler/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12.py index f83187d27b..32020e2ec2 100644 --- a/prowler/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12.py +++ b/prowler/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12.py @@ -16,6 +16,7 @@ class app_minimum_tls_version_12(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"Minimum TLS version is not set to 1.2 for app '{app_name}' in subscription '{subscription_name}'." if ( diff --git a/prowler/providers/azure/services/app/app_register_with_identity/app_register_with_identity.py b/prowler/providers/azure/services/app/app_register_with_identity/app_register_with_identity.py index fa5fda09e9..0491b4e762 100644 --- a/prowler/providers/azure/services/app/app_register_with_identity/app_register_with_identity.py +++ b/prowler/providers/azure/services/app/app_register_with_identity/app_register_with_identity.py @@ -16,6 +16,7 @@ class app_register_with_identity(Check): report.subscription = subscription_name report.resource_name = app_name report.resource_id = app.resource_id + report.location = app.location report.status_extended = f"App '{app_name}' in subscription '{subscription_name}' has an identity configured." if not app.identity: diff --git a/prowler/providers/azure/services/app/app_service.py b/prowler/providers/azure/services/app/app_service.py index 39af15891e..98aaed3449 100644 --- a/prowler/providers/azure/services/app/app_service.py +++ b/prowler/providers/azure/services/app/app_service.py @@ -56,6 +56,7 @@ class App(AzureService): ), https_only=getattr(app, "https_only", False), identity=getattr(app, "identity", None), + location=app.location, kind=getattr(app, "kind", "app"), ) } @@ -105,6 +106,7 @@ class WebApp: resource_id: str configurations: SiteConfigResource identity: ManagedServiceIdentity + location: str client_cert_mode: str = "Ignore" auth_enabled: bool = False https_only: bool = False diff --git a/prowler/providers/azure/services/appinsights/appinsights_service.py b/prowler/providers/azure/services/appinsights/appinsights_service.py index 0e7697f3e9..6ef8ad1a1f 100644 --- a/prowler/providers/azure/services/appinsights/appinsights_service.py +++ b/prowler/providers/azure/services/appinsights/appinsights_service.py @@ -26,7 +26,9 @@ class AppInsights(AzureService): components[subscription_name].update( { component.app_id: Component( - resource_id=component.id, resource_name=component.name + resource_id=component.id, + resource_name=component.name, + location=component.location, ) } ) @@ -42,3 +44,4 @@ class AppInsights(AzureService): class Component: resource_id: str resource_name: str + location: str diff --git a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks.py b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks.py index ed7d5a4220..7be20270ce 100644 --- a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks.py +++ b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks.py @@ -12,6 +12,7 @@ class cosmosdb_account_firewall_use_selected_networks(Check): report.resource_name = account.name report.resource_id = account.id report.status = "FAIL" + report.location = account.location report.status_extended = f"CosmosDB account {account.name} from subscription {subscription} has firewall rules that allow access from all networks." if account.is_virtual_network_filter_enabled: report.status = "PASS" diff --git a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac.py b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac.py index 954cb5672d..7e843afda0 100644 --- a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac.py +++ b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac.py @@ -12,6 +12,7 @@ class cosmosdb_account_use_aad_and_rbac(Check): report.resource_name = account.name report.resource_id = account.id report.status = "FAIL" + report.location = account.location report.status_extended = f"CosmosDB account {account.name} from subscription {subscription} is not using AAD and RBAC" if account.disable_local_auth: report.status = "PASS" diff --git a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints.py b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints.py index 22bad479bc..315f8de7c5 100644 --- a/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints.py +++ b/prowler/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints.py @@ -12,6 +12,7 @@ class cosmosdb_account_use_private_endpoints(Check): report.resource_name = account.name report.resource_id = account.id report.status = "FAIL" + report.location = account.location report.status_extended = f"CosmosDB account {account.name} from subscription {subscription} is not using private endpoints connections" if account.private_endpoint_connections: report.status = "PASS" diff --git a/prowler/providers/azure/services/cosmosdb/cosmosdb_service.py b/prowler/providers/azure/services/cosmosdb/cosmosdb_service.py index aab39d5612..04a165c7c2 100644 --- a/prowler/providers/azure/services/cosmosdb/cosmosdb_service.py +++ b/prowler/providers/azure/services/cosmosdb/cosmosdb_service.py @@ -46,9 +46,9 @@ class Account: id: str name: str kind: str - location: str type: str tags: dict is_virtual_network_filter_enabled: bool + location: str private_endpoint_connections: list[PrivateEndpointConnection] = None disable_local_auth: bool = False diff --git a/prowler/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac.py b/prowler/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac.py index b69ee56b15..3841b1eef5 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac.py +++ b/prowler/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac.py @@ -13,6 +13,7 @@ class keyvault_key_expiration_set_in_non_rbac(Check): report.resource_name = keyvault.name report.resource_id = keyvault.id report.status = "PASS" + report.location = keyvault.location report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} has all the keys with expiration date set." has_key_without_expiration = False for key in keyvault.keys: diff --git a/prowler/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled.py b/prowler/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled.py index e98dc19871..84cc98967a 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled.py +++ b/prowler/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled.py @@ -12,6 +12,7 @@ class keyvault_key_rotation_enabled(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location for key in keyvault.keys: if ( key.rotation_policy diff --git a/prowler/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled.py b/prowler/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled.py index 5c8ef4fab3..3041916a51 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled.py +++ b/prowler/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled.py @@ -16,6 +16,7 @@ class keyvault_logging_enabled(Check): report.subscription = subscription_name report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status_extended = f"There are no diagnostic settings capturing audit logs for Key Vault {keyvault_name} in subscription {subscription_name}." findings.append(report) else: @@ -24,6 +25,7 @@ class keyvault_logging_enabled(Check): report.subscription = subscription_name report.resource_name = diagnostic_setting.name report.resource_id = diagnostic_setting.id + report.location = keyvault.location report.status = "FAIL" report.status_extended = f"Diagnostic setting {diagnostic_setting.name} for Key Vault {keyvault_name} in subscription {subscription_name} does not have audit logging." audit = False diff --git a/prowler/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set.py b/prowler/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set.py index 18606afdfe..b102042b7f 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set.py +++ b/prowler/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set.py @@ -15,6 +15,7 @@ class keyvault_non_rbac_secret_expiration_set(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "PASS" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} has all the secrets with expiration date set." has_secret_without_expiration = False diff --git a/prowler/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints.py b/prowler/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints.py index febf3cf4bf..ecfc1f549c 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints.py +++ b/prowler/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints.py @@ -11,6 +11,7 @@ class keyvault_private_endpoints(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "FAIL" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} is not using private endpoints." if ( diff --git a/prowler/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled.py b/prowler/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled.py index a18b85d4c2..e9524211f9 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled.py +++ b/prowler/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled.py @@ -11,6 +11,7 @@ class keyvault_rbac_enabled(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "FAIL" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} is not using RBAC for access control." if ( diff --git a/prowler/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set.py b/prowler/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set.py index ae68e0dd34..0c8f708273 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set.py +++ b/prowler/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set.py @@ -12,6 +12,7 @@ class keyvault_rbac_key_expiration_set(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "PASS" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} has all the keys with expiration date set." has_key_without_expiration = False diff --git a/prowler/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set.py b/prowler/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set.py index 03c0bd3e83..ccc5691a07 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set.py +++ b/prowler/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set.py @@ -12,6 +12,7 @@ class keyvault_rbac_secret_expiration_set(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "PASS" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} has all the secrets with expiration date set." has_secret_without_expiration = False diff --git a/prowler/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable.py b/prowler/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable.py index 1893767721..0863ccdd9c 100644 --- a/prowler/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable.py +++ b/prowler/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable.py @@ -11,6 +11,7 @@ class keyvault_recoverable(Check): report.subscription = subscription report.resource_name = keyvault.name report.resource_id = keyvault.id + report.location = keyvault.location report.status = "FAIL" report.status_extended = f"Keyvault {keyvault.name} from subscription {subscription} is not recoverable." if ( diff --git a/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted.py b/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted.py index de3995e4d9..d9c465faaf 100644 --- a/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted.py +++ b/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted.py @@ -20,6 +20,7 @@ class monitor_storage_account_with_activity_logs_cmk_encrypted(Check): report.subscription = subscription_name report.resource_name = storage_account.name report.resource_id = storage_account.id + report.location = storage_account.location if storage_account.encryption_type == "Microsoft.Storage": report.status = "FAIL" report.status_extended = f"Storage account {storage_account.name} storing activity log in subscription {subscription_name} is not encrypted with Customer Managed Key." diff --git a/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private.py b/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private.py index 8e57808abd..922101d399 100644 --- a/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private.py +++ b/prowler/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private.py @@ -20,6 +20,7 @@ class monitor_storage_account_with_activity_logs_is_private(Check): report.subscription = subscription_name report.resource_name = storage_account.name report.resource_id = storage_account.id + report.location = storage_account.location if storage_account.allow_blob_public_access: report.status = "FAIL" report.status_extended = f"Blob public access enabled in storage account {storage_account.name} storing activity logs in subscription {subscription_name}." diff --git a/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated.py b/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated.py index 475c816c07..d38a3a6912 100644 --- a/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated.py +++ b/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated.py @@ -19,6 +19,7 @@ class mysql_flexible_server_audit_log_connection_activated(Check): report.subscription = subscription_name report.resource_name = server_name report.resource_id = server_name + report.location = server.location report.status_extended = f"Audit log is disabled for server {server_name} in subscription {subscription_name}." if "audit_log_events" in server.configurations: diff --git a/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled.py b/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled.py index 0ee742ff41..547c35a314 100644 --- a/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled.py +++ b/prowler/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled.py @@ -19,6 +19,7 @@ class mysql_flexible_server_audit_log_enabled(Check): report.subscription = subscription_name report.resource_name = server_name report.resource_id = server_name + report.location = server.location report.status_extended = f"Audit log is disabled for server {server_name} in subscription {subscription_name}." if "audit_log_enabled" in server.configurations: diff --git a/prowler/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12.py b/prowler/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12.py index 4af9f76ff2..2853fb05be 100644 --- a/prowler/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12.py +++ b/prowler/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12.py @@ -19,6 +19,7 @@ class mysql_flexible_server_minimum_tls_version_12(Check): report.subscription = subscription_name report.resource_name = server_name report.resource_id = server_name + report.location = server.location report.status_extended = f"TLS version is not configured in server {server_name} in subscription {subscription_name}." if "tls_version" in server.configurations: diff --git a/prowler/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled.py b/prowler/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled.py index 90071d1de4..636becfdf0 100644 --- a/prowler/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled.py +++ b/prowler/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled.py @@ -19,6 +19,7 @@ class mysql_flexible_server_ssl_connection_enabled(Check): report.subscription = subscription_name report.resource_name = server_name report.resource_id = server_name + report.location = server.location report.status_extended = f"SSL connection is disabled for server {server_name} in subscription {subscription_name}." if "require_secure_transport" in server.configurations: diff --git a/prowler/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists.py b/prowler/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists.py index d2c3e9cbed..bac21226db 100644 --- a/prowler/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists.py +++ b/prowler/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists.py @@ -11,21 +11,17 @@ class network_bastion_host_exists(Check): status_extended = ( f"Bastion Host from subscription {subscription} does not exist" ) - resource_id = "N/A" else: bastion_names = ", ".join( [bastion_host.name for bastion_host in bastion_hosts] ) - resource_id = ", ".join( - [bastion_host.id for bastion_host in bastion_hosts] - ) status = "PASS" status_extended = f"Bastion Host from subscription {subscription} available are: {bastion_names}" report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.resource_name = "Bastion Host" - report.resource_id = resource_id + report.resource_id = "Bastion Host" report.status = status report.status_extended = status_extended findings.append(report) diff --git a/prowler/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent.py b/prowler/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent.py index 35cb161bd8..8a2d5e566c 100644 --- a/prowler/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent.py +++ b/prowler/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent.py @@ -12,6 +12,7 @@ class network_flow_log_captured_sent(Check): report.resource_name = network_watcher.name report.resource_id = network_watcher.id report.status = "FAIL" + report.location = network_watcher.location report.status_extended = f"Network Watcher {network_watcher.name} from subscription {subscription} has no flow logs" if network_watcher.flow_logs: report.status = "FAIL" diff --git a/prowler/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days.py b/prowler/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days.py index d37115dd4e..1543a1be8d 100644 --- a/prowler/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days.py +++ b/prowler/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days.py @@ -11,6 +11,7 @@ class network_flow_log_more_than_90_days(Check): report.subscription = subscription report.resource_name = network_watcher.name report.resource_id = network_watcher.id + report.location = network_watcher.location if network_watcher.flow_logs: report.status = "PASS" report.status_extended = f"Network Watcher {network_watcher.name} from subscription {subscription} has flow logs enabled for more than 90 days" diff --git a/prowler/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted.py b/prowler/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted.py index 074cc9abdd..12b8f1c395 100644 --- a/prowler/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted.py +++ b/prowler/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted.py @@ -12,6 +12,7 @@ class network_http_internet_access_restricted(Check): report.resource_name = security_group.name report.resource_id = security_group.id report.status = "PASS" + report.location = security_group.location report.status_extended = f"Security Group {security_group.name} from subscription {subscription} has HTTP internet access restricted." rule_fail_condition = any( ( diff --git a/prowler/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan.py b/prowler/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan.py index f8123a0ba4..5c8a3b144e 100644 --- a/prowler/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan.py +++ b/prowler/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan.py @@ -17,6 +17,7 @@ class network_public_ip_shodan(Check): report.subscription = subscription report.resource_name = ip.name report.resource_id = ip.id + report.location = ip.location try: shodan_info = api.host(ip.ip_address) report.status = "FAIL" diff --git a/prowler/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted.py b/prowler/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted.py index 2ec314e032..dc21ced73a 100644 --- a/prowler/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted.py +++ b/prowler/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted.py @@ -12,6 +12,7 @@ class network_rdp_internet_access_restricted(Check): report.resource_name = security_group.name report.resource_id = security_group.id report.status = "PASS" + report.location = security_group.location report.status_extended = f"Security Group {security_group.name} from subscription {subscription} has RDP internet access restricted." rule_fail_condition = any( ( diff --git a/prowler/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted.py b/prowler/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted.py index 8efe55b38a..236b7a87a4 100644 --- a/prowler/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted.py +++ b/prowler/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted.py @@ -12,6 +12,7 @@ class network_ssh_internet_access_restricted(Check): report.resource_name = security_group.name report.resource_id = security_group.id report.status = "PASS" + report.location = security_group.location report.status_extended = f"Security Group {security_group.name} from subscription {subscription} has SSH internet access restricted." rule_fail_condition = any( ( diff --git a/prowler/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted.py b/prowler/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted.py index 89443bb9d2..4fab26f1ec 100644 --- a/prowler/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted.py +++ b/prowler/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted.py @@ -12,6 +12,7 @@ class network_udp_internet_access_restricted(Check): report.resource_name = security_group.name report.resource_id = security_group.id report.status = "PASS" + report.location = security_group.location report.status_extended = f"Security Group {security_group.name} from subscription {subscription} has UDP internet access restricted." rule_fail_condition = any( rule.protocol in ["UDP"] diff --git a/prowler/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled.py b/prowler/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled.py index e4d6797ed9..7089de5b79 100644 --- a/prowler/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled.py +++ b/prowler/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled.py @@ -14,6 +14,7 @@ class network_watcher_enabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.resource_name = "Network Watcher" + report.location = location report.resource_id = f"/subscriptions/{subscription}/providers/Microsoft.Network/networkWatchers/{location}" if location not in nw_locations: report.status = "FAIL" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled.py index 8c0aa09a43..4f2a2fa883 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_allow_access_services_disabled(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has allow public access from any Azure service enabled" if not any( rule.start_ip == "0.0.0.0" and rule.end_ip == "0.0.0.0" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on.py index c1855d6ca7..45e49721d5 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_connection_throttling_on(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has connection_throttling disabled" if server.connection_throttling == "ON": report.status = "PASS" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled.py index 9feaa6b93d..14754b038e 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_enforce_ssl_enabled(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has enforce ssl disabled" if server.require_secure_transport == "ON": report.status = "PASS" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on.py index 3bfcda42ca..50298b5ddb 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_log_checkpoints_on(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has log_checkpoints disabled" if server.log_checkpoints == "ON": report.status = "PASS" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on.py index 0ae39b71f4..13b1a51400 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_log_connections_on(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has log_connections disabled" if server.log_connections == "ON": report.status = "PASS" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on.py index 4d377b2d2d..e1f28b41e8 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_log_disconnections_on(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has log_disconnections disabled" if server.log_disconnections == "ON": report.status = "PASS" diff --git a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3.py b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3.py index 6880c45590..8934d2885e 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3.py +++ b/prowler/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3.py @@ -17,6 +17,7 @@ class postgresql_flexible_server_log_retention_days_greater_3(Check): report.resource_name = server.name report.resource_id = server.id report.status = "FAIL" + report.location = server.location report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has log_retention disabled" if server.log_retention_days: report.status_extended = f"Flexible Postgresql server {server.name} from subscription {subscription} has log_retention set to {server.log_retention_days}" diff --git a/prowler/providers/azure/services/postgresql/postgresql_service.py b/prowler/providers/azure/services/postgresql/postgresql_service.py index 78662e46aa..6fb570807b 100644 --- a/prowler/providers/azure/services/postgresql/postgresql_service.py +++ b/prowler/providers/azure/services/postgresql/postgresql_service.py @@ -42,6 +42,9 @@ class PostgreSQL(AzureService): firewall = self.__get_firewall__( subscription, resource_group, postgresql_server.name ) + location = self.__get_location__( + subscription, resource_group, postgresql_server.name + ) flexible_servers[subscription].append( Server( id=postgresql_server.id, @@ -54,6 +57,7 @@ class PostgreSQL(AzureService): connection_throttling=connection_throttling, log_retention_days=log_retention_days, firewall=firewall, + location=location, ) ) except Exception as error: @@ -96,6 +100,11 @@ class PostgreSQL(AzureService): ) return log_disconnections.value.upper() + def __get_location__(self, subscription, resouce_group_name, server_name): + client = self.clients[subscription] + location = client.servers.get(resouce_group_name, server_name).location + return location + def __get_connection_throttling__( self, subscription, resouce_group_name, server_name ): @@ -152,3 +161,4 @@ class Server: connection_throttling: str log_retention_days: str firewall: list[Firewall] + location: str diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled.py index f8d82c8db2..dd94feced5 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled.py @@ -13,7 +13,7 @@ class sqlserver_auditing_enabled(Check): report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has a auditing policy configured." report.resource_name = sql_server.name report.resource_id = sql_server.id - + report.location = sql_server.location for auditing_policy in sql_server.auditing_policies: if auditing_policy.state == "Disabled": report.status = "FAIL" diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days.py b/prowler/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days.py index ef2aee27c3..6964ee1cb5 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days.py @@ -11,6 +11,7 @@ class sqlserver_auditing_retention_90_days(Check): report.subscription = subscription report.resource_name = sql_server.name report.resource_id = sql_server.id + report.location = sql_server.location has_failed = False has_policy = False for policy in sql_server.auditing_policies: diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled.py index 7fb646e0e3..75ca54d80c 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled.py @@ -10,6 +10,7 @@ class sqlserver_azuread_administrator_enabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has an Active Directory administrator." report.resource_name = sql_server.name report.resource_id = sql_server.id diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled.py index 696829466c..5ef7219b15 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled.py @@ -13,6 +13,7 @@ class sqlserver_microsoft_defender_enabled(Check): report.resource_name = sql_server.name report.resource_id = sql_server.id report.status = "FAIL" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has microsoft defender disabled." if sql_server.security_alert_policies.state == "Enabled": report.status = "PASS" diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_service.py b/prowler/providers/azure/services/sqlserver/sqlserver_service.py index a668518534..a7d289462f 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_service.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_service.py @@ -48,6 +48,10 @@ class SQLServer(AzureService): subscription, resource_group, sql_server.name ) ) + location = self.__get_location__( + subscription, resource_group, sql_server.name + ) + sql_servers[subscription].append( Server( id=sql_server.id, @@ -63,6 +67,7 @@ class SQLServer(AzureService): ), vulnerability_assessment=vulnerability_assessment, security_alert_policies=security_alert_policies, + location=location, ) ) except Exception as error: @@ -164,6 +169,12 @@ class SQLServer(AzureService): ) return security_alert_policies + def __get_location__(self, subscription, resouce_group_name, server_name): + client = self.clients[subscription] + location = client.servers.get(resouce_group_name, server_name).location + + return location + @dataclass class Database: @@ -184,6 +195,7 @@ class Server: administrators: ServerExternalAdministrator auditing_policies: ServerBlobAuditingPolicy firewall_rules: FirewallRule + location: str encryption_protector: EncryptionProtector = None databases: list[Database] = None vulnerability_assessment: ServerVulnerabilityAssessment = None diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk.py b/prowler/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk.py index c7b7fc765d..378ab0da67 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk.py @@ -15,6 +15,7 @@ class sqlserver_tde_encrypted_with_cmk(Check): report.subscription = subscription report.resource_name = sql_server.name report.resource_id = sql_server.id + report.location = sql_server.location found_disabled = False if ( sql_server.encryption_protector.server_key_type diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled.py index f65e3292c4..728ddc986f 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled.py @@ -16,6 +16,7 @@ class sqlserver_tde_encryption_enabled(Check): report.subscription = subscription report.resource_name = database.name report.resource_id = database.id + report.location = sql_server.location if database.tde_encryption.status == "Enabled": report.status = "PASS" report.status_extended = f"Database {database.name} from SQL Server {sql_server.name} from subscription {subscription} has TDE enabled" diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access.py b/prowler/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access.py index f3d3023f54..1e871b9f92 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access.py @@ -13,7 +13,7 @@ class sqlserver_unrestricted_inbound_access(Check): report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} does not have firewall rules allowing 0.0.0.0-255.255.255.255." report.resource_name = sql_server.name report.resource_id = sql_server.id - + report.location = sql_server.location for firewall_rule in sql_server.firewall_rules: if ( firewall_rule.start_ip_address == "0.0.0.0" diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled.py index 304905fd3f..8ed71e4aca 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled.py @@ -12,6 +12,7 @@ class sqlserver_va_emails_notifications_admins_enabled(Check): report.resource_name = sql_server.name report.resource_id = sql_server.id report.status = "FAIL" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has vulnerability assessment disabled." if ( sql_server.vulnerability_assessment diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled.py index 12948248ec..e629ceb507 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled.py @@ -12,6 +12,7 @@ class sqlserver_va_periodic_recurring_scans_enabled(Check): report.resource_name = sql_server.name report.resource_id = sql_server.id report.status = "FAIL" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has vulnerability assessment disabled." if ( sql_server.vulnerability_assessment diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured.py b/prowler/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured.py index 0c0ee5a852..a6df0fd5f1 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured.py @@ -12,6 +12,7 @@ class sqlserver_va_scan_reports_configured(Check): report.resource_name = sql_server.name report.resource_id = sql_server.id report.status = "FAIL" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has vulnerability assessment disabled." if ( sql_server.vulnerability_assessment diff --git a/prowler/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled.py b/prowler/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled.py index a01cce570b..14b38d87d2 100644 --- a/prowler/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled.py +++ b/prowler/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled.py @@ -12,6 +12,7 @@ class sqlserver_vulnerability_assessment_enabled(Check): report.resource_name = sql_server.name report.resource_id = sql_server.id report.status = "FAIL" + report.location = sql_server.location report.status_extended = f"SQL Server {sql_server.name} from subscription {subscription} has vulnerability assessment disabled." if ( sql_server.vulnerability_assessment diff --git a/prowler/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled.py b/prowler/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled.py index 02b0f57bdd..a0507b3dfa 100644 --- a/prowler/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled.py +++ b/prowler/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled.py @@ -10,6 +10,7 @@ class storage_blob_public_access_level_is_disabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "FAIL" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has allow blob public access enabled." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied.py b/prowler/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied.py index 92c06ee3b0..2b426e12f7 100644 --- a/prowler/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied.py +++ b/prowler/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied.py @@ -10,6 +10,7 @@ class storage_default_network_access_rule_is_denied(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has network access rule set to Deny." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled.py b/prowler/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled.py index b479865cae..dca6e61dfb 100644 --- a/prowler/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled.py +++ b/prowler/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled.py @@ -10,6 +10,7 @@ class storage_ensure_azure_services_are_trusted_to_access_is_enabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} allows trusted Microsoft services to access this storage account." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys.py b/prowler/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys.py index 396b636db1..5b4d9271a5 100644 --- a/prowler/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys.py +++ b/prowler/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys.py @@ -10,6 +10,7 @@ class storage_ensure_encryption_with_customer_managed_keys(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} encrypts with CMKs." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12.py b/prowler/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12.py index bb57266325..15b47f0bac 100644 --- a/prowler/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12.py +++ b/prowler/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12.py @@ -10,6 +10,7 @@ class storage_ensure_minimum_tls_version_12(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has TLS version set to 1.2." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts.py b/prowler/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts.py index 133671a72f..68778ff335 100644 --- a/prowler/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts.py +++ b/prowler/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts.py @@ -11,6 +11,7 @@ class storage_ensure_private_endpoints_in_storage_accounts(Check): report.subscription = subscription report.resource_name = storage_account.name report.resource_id = storage_account.id + report.location = storage_account.location if storage_account.private_endpoint_connections: report.status = "PASS" report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has private endpoint connections." diff --git a/prowler/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled.py b/prowler/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled.py index 63e948b852..82906b1368 100644 --- a/prowler/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled.py +++ b/prowler/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled.py @@ -12,6 +12,7 @@ class storage_ensure_soft_delete_is_enabled(Check): report.subscription = subscription report.resource_name = storage_account.name report.resource_id = storage_account.id + report.location = storage_account.location if getattr( storage_account.blob_properties.container_delete_retention_policy, "enabled", diff --git a/prowler/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled.py b/prowler/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled.py index f8bae5783e..1413fb5ae8 100644 --- a/prowler/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled.py +++ b/prowler/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled.py @@ -10,6 +10,7 @@ class storage_infrastructure_encryption_is_enabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has infrastructure encryption enabled." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days.py b/prowler/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days.py index c6e7553cb7..4625e14a37 100644 --- a/prowler/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days.py +++ b/prowler/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days.py @@ -11,6 +11,7 @@ class storage_key_rotation_90_days(Check): report.subscription = subscription report.resource_name = storage_account.name report.resource_id = storage_account.id + report.location = storage_account.location if not storage_account.key_expiration_period_in_days: report.status = "FAIL" report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has no key expiration period set." diff --git a/prowler/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled.py b/prowler/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled.py index 5259522991..a8039542fb 100644 --- a/prowler/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled.py +++ b/prowler/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled.py @@ -10,6 +10,7 @@ class storage_secure_transfer_required_is_enabled(Check): report = Check_Report_Azure(self.metadata()) report.subscription = subscription report.status = "PASS" + report.location = storage_account.location report.status_extended = f"Storage account {storage_account.name} from subscription {subscription} has secure transfer required enabled." report.resource_name = storage_account.name report.resource_id = storage_account.id diff --git a/prowler/providers/azure/services/storage/storage_service.py b/prowler/providers/azure/services/storage/storage_service.py index 55f73bae09..5da0a19a6f 100644 --- a/prowler/providers/azure/services/storage/storage_service.py +++ b/prowler/providers/azure/services/storage/storage_service.py @@ -51,6 +51,7 @@ class Storage(AzureService): minimum_tls_version=storage_account.minimum_tls_version, private_endpoint_connections=storage_account.private_endpoint_connections, key_expiration_period_in_days=key_expiration_period_in_days, + location=storage_account.location, ) ) except Exception as error: @@ -103,4 +104,5 @@ class Account: minimum_tls_version: str private_endpoint_connections: PrivateEndpointConnection key_expiration_period_in_days: str + location: str blob_properties: BlobProperties = None diff --git a/prowler/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk.py b/prowler/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk.py index de33311070..57ef901b7d 100644 --- a/prowler/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk.py +++ b/prowler/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk.py @@ -14,6 +14,7 @@ class vm_ensure_attached_disks_encrypted_with_cmk(Check): report.subscription = subscription_name report.resource_name = disk.resource_name report.resource_id = disk.resource_id + report.location = disk.location report.status_extended = f"Disk '{disk_id}' is encrypted with a customer-managed key in subscription {subscription_name}." if ( diff --git a/prowler/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk.py b/prowler/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk.py index 20ea322b58..ac117d2735 100644 --- a/prowler/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk.py +++ b/prowler/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk.py @@ -14,6 +14,7 @@ class vm_ensure_unattached_disks_encrypted_with_cmk(Check): report.subscription = subscription_name report.resource_name = disk.resource_name report.resource_id = disk.resource_id + report.location = disk.location report.status_extended = f"Disk '{disk_id}' is encrypted with a customer-managed key in subscription {subscription_name}." if ( diff --git a/prowler/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks.py b/prowler/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks.py index 96d241096f..6473cf8ffb 100644 --- a/prowler/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks.py +++ b/prowler/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks.py @@ -13,6 +13,7 @@ class vm_ensure_using_managed_disks(Check): report.subscription = subscription_name report.resource_name = vm.resource_name report.resource_id = vm_id + report.location = vm.location report.status_extended = f"VM {vm.resource_name} is using managed disks in subscription {subscription_name}" using_managed_disks = ( diff --git a/prowler/providers/azure/services/vm/vm_service.py b/prowler/providers/azure/services/vm/vm_service.py index c923600f47..327e61752a 100644 --- a/prowler/providers/azure/services/vm/vm_service.py +++ b/prowler/providers/azure/services/vm/vm_service.py @@ -31,6 +31,7 @@ class VirtualMachines(AzureService): resource_id=vm.id, resource_name=vm.name, storage_profile=getattr(vm, "storage_profile", None), + location=vm.location, ) } ) @@ -61,6 +62,7 @@ class VirtualMachines(AzureService): disk.unique_id: Disk( resource_id=disk.id, resource_name=disk.name, + location=disk.location, vms_attached=vms_attached, encryption_type=getattr( getattr(disk, "encryption", None), "type", None @@ -81,6 +83,7 @@ class VirtualMachine: resource_id: str resource_name: str storage_profile: StorageProfile + location: str @dataclass @@ -89,3 +92,4 @@ class Disk: resource_name: str vms_attached: list[str] encryption_type: str + location: str diff --git a/tests/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled_test.py b/tests/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled_test.py index 07f5665286..2fef4ab1c1 100644 --- a/tests/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled_test.py +++ b/tests/providers/azure/services/aks/aks_cluster_rbac_enabled/aks_cluster_rbac_enabled_test.py @@ -58,6 +58,7 @@ class Test_aks_cluster_rbac_enabled: private_fqdn=None, network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -85,6 +86,7 @@ class Test_aks_cluster_rbac_enabled: assert result[0].resource_name == "cluster_name" assert result[0].resource_id == cluster_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_rbac_not_enabled(self): aks_client = mock.MagicMock @@ -97,6 +99,7 @@ class Test_aks_cluster_rbac_enabled: private_fqdn=None, network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=False, ) } @@ -124,3 +127,4 @@ class Test_aks_cluster_rbac_enabled: assert result[0].resource_name == "cluster_name" assert result[0].resource_id == cluster_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes_test.py b/tests/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes_test.py index e4ef70d4fd..e8fe825666 100644 --- a/tests/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes_test.py +++ b/tests/providers/azure/services/aks/aks_clusters_created_with_private_nodes/aks_clusters_created_with_private_nodes_test.py @@ -58,6 +58,7 @@ class Test_aks_clusters_created_with_private_nodes: private_fqdn="", network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=True)], + location="westeurope", rbac_enabled=True, ) } @@ -85,6 +86,7 @@ class Test_aks_clusters_created_with_private_nodes: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_cluster_private_nodes(self): aks_client = mock.MagicMock @@ -97,6 +99,7 @@ class Test_aks_clusters_created_with_private_nodes: private_fqdn="private_fqdn", network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -124,6 +127,7 @@ class Test_aks_clusters_created_with_private_nodes: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_cluster_public_and_private_nodes(self): aks_client = mock.MagicMock @@ -140,6 +144,7 @@ class Test_aks_clusters_created_with_private_nodes: mock.MagicMock(enable_node_public_ip=True), mock.MagicMock(enable_node_public_ip=False), ], + location="westeurope", rbac_enabled=True, ) } @@ -167,3 +172,4 @@ class Test_aks_clusters_created_with_private_nodes: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled_test.py b/tests/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled_test.py index 6fce459af9..a1f63c392f 100644 --- a/tests/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled_test.py +++ b/tests/providers/azure/services/aks/aks_clusters_public_access_disabled/aks_clusters_public_access_disabled_test.py @@ -58,6 +58,7 @@ class Test_aks_clusters_public_access_disabled: private_fqdn=None, network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -85,6 +86,7 @@ class Test_aks_clusters_public_access_disabled: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_cluster_private_fqdn(self): aks_client = mock.MagicMock @@ -97,6 +99,7 @@ class Test_aks_clusters_public_access_disabled: private_fqdn="private_fqdn", network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -124,6 +127,7 @@ class Test_aks_clusters_public_access_disabled: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_cluster_private_fqdn_with_public_ip(self): aks_client = mock.MagicMock @@ -136,6 +140,7 @@ class Test_aks_clusters_public_access_disabled: private_fqdn="private_fqdn", network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=True)], + location="westeurope", rbac_enabled=True, ) } @@ -163,3 +168,4 @@ class Test_aks_clusters_public_access_disabled: assert result[0].resource_id == cluster_id assert result[0].resource_name == "cluster_name" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled_test.py b/tests/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled_test.py index 1da40bdbe4..498bb0ca78 100644 --- a/tests/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled_test.py +++ b/tests/providers/azure/services/aks/aks_network_policy_enabled/aks_network_policy_enabled_test.py @@ -58,6 +58,7 @@ class Test_aks_network_policy_enabled: private_fqdn=None, network_policy="network_policy", agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -85,6 +86,7 @@ class Test_aks_network_policy_enabled: assert result[0].resource_name == "cluster_name" assert result[0].resource_id == cluster_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_aks_network_policy_disabled(self): aks_client = mock.MagicMock @@ -97,6 +99,7 @@ class Test_aks_network_policy_enabled: private_fqdn=None, network_policy=None, agent_pool_profiles=[mock.MagicMock(enable_node_public_ip=False)], + location="westeurope", rbac_enabled=True, ) } @@ -124,3 +127,4 @@ class Test_aks_network_policy_enabled: assert result[0].resource_name == "cluster_name" assert result[0].resource_id == cluster_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/aks/aks_service_test.py b/tests/providers/azure/services/aks/aks_service_test.py index c95b5bda6e..5a19ff16f8 100644 --- a/tests/providers/azure/services/aks/aks_service_test.py +++ b/tests/providers/azure/services/aks/aks_service_test.py @@ -16,6 +16,7 @@ def mock_aks_get_clusters(_): private_fqdn="private_fqdn", network_policy="network_policy", agent_pool_profiles=[], + location="westeurope", rbac_enabled=True, ) } @@ -60,4 +61,7 @@ class Test_AppInsights_Service: aks.clusters[AZURE_SUBSCRIPTION_ID]["cluster_id-1"].agent_pool_profiles == [] ) + assert ( + aks.clusters[AZURE_SUBSCRIPTION_ID]["cluster_id-1"].location == "westeurope" + ) assert aks.clusters[AZURE_SUBSCRIPTION_ID]["cluster_id-1"].rbac_enabled diff --git a/tests/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on_test.py b/tests/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on_test.py index 07601f2641..1eafbc2a90 100644 --- a/tests/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on_test.py +++ b/tests/providers/azure/services/app/app_client_certificates_on/app_client_certificates_on_test.py @@ -71,6 +71,7 @@ class Test_app_client_certificates_on: client_cert_mode="Required", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_client_certificates_on: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_client_certificates_off(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_client_certificates_on: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -125,3 +128,4 @@ class Test_app_client_certificates_on: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up_test.py b/tests/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up_test.py index 5cb3ef44d3..439da72bd2 100644 --- a/tests/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up_test.py +++ b/tests/providers/azure/services/app/app_ensure_auth_is_set_up/app_ensure_auth_is_set_up_test.py @@ -71,6 +71,7 @@ class Test_app_ensure_auth_is_set_up: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_ensure_auth_is_set_up: assert result[0].resource_name == "app_id-1" assert result[0].resource_id == resource_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_auth_disabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_ensure_auth_is_set_up: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -125,3 +128,4 @@ class Test_app_ensure_auth_is_set_up: assert result[0].resource_name == "app_id-1" assert result[0].resource_id == resource_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https_test.py b/tests/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https_test.py index f781a74b01..576e0c913d 100644 --- a/tests/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https_test.py +++ b/tests/providers/azure/services/app/app_ensure_http_is_redirected_to_https/app_ensure_http_is_redirected_to_https_test.py @@ -71,6 +71,7 @@ class Test_app_ensure_http_is_redirected_to_https: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_ensure_http_is_redirected_to_https: assert result[0].resource_name == "app_id-1" assert result[0].resource_id == resource_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_http_to_https_enabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_ensure_http_is_redirected_to_https: client_cert_mode="Ignore", https_only=True, identity=None, + location="West Europe", ) } } @@ -125,3 +128,4 @@ class Test_app_ensure_http_is_redirected_to_https: assert result[0].resource_name == "app_id-1" assert result[0].resource_id == resource_id assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest_test.py b/tests/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest_test.py index b6f4123977..5b7eaef5f9 100644 --- a/tests/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest_test.py +++ b/tests/providers/azure/services/app/app_ensure_java_version_is_latest/app_ensure_java_version_is_latest_test.py @@ -71,6 +71,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -107,6 +108,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -121,6 +123,7 @@ class Test_app_ensure_java_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_linux_java_version_not_latest(self): resource_id = f"/subscriptions/{uuid4()}" @@ -151,6 +154,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -165,6 +169,7 @@ class Test_app_ensure_java_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_windows_java_version_latest(self): resource_id = f"/subscriptions/{uuid4()}" @@ -195,6 +200,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -209,11 +215,11 @@ class Test_app_ensure_java_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_windows_java_version_not_latest(self): resource_id = f"/subscriptions/{uuid4()}" app_client = mock.MagicMock - app_client.audit_config = {"java_latest_version": "17"} with mock.patch( @@ -239,6 +245,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -253,6 +260,7 @@ class Test_app_ensure_java_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_linux_php_version_latest(self): resource_id = f"/subscriptions/{uuid4()}" @@ -283,6 +291,7 @@ class Test_app_ensure_java_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } diff --git a/tests/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest_test.py b/tests/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest_test.py index c3855bd3f3..6076ebc261 100644 --- a/tests/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest_test.py +++ b/tests/providers/azure/services/app/app_ensure_php_version_is_latest/app_ensure_php_version_is_latest_test.py @@ -71,6 +71,7 @@ class Test_app_ensure_php_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -105,6 +106,7 @@ class Test_app_ensure_php_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -119,6 +121,7 @@ class Test_app_ensure_php_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_php_version_latest(self): resource_id = f"/subscriptions/{uuid4()}" @@ -147,6 +150,7 @@ class Test_app_ensure_php_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -161,3 +165,4 @@ class Test_app_ensure_php_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest_test.py b/tests/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest_test.py index 89e98bf1ab..e9e75e4e0c 100644 --- a/tests/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest_test.py +++ b/tests/providers/azure/services/app/app_ensure_python_version_is_latest/app_ensure_python_version_is_latest_test.py @@ -49,7 +49,6 @@ class Test_app_ensure_python_version_is_latest: def test_app_configurations_none(self): resource_id = f"/subscriptions/{uuid4()}" app_client = mock.MagicMock - with mock.patch( "prowler.providers.common.common.get_global_provider", return_value=set_mocked_azure_provider(), @@ -71,6 +70,7 @@ class Test_app_ensure_python_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -105,6 +105,7 @@ class Test_app_ensure_python_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -119,6 +120,7 @@ class Test_app_ensure_python_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_python_version_not_latest(self): resource_id = f"/subscriptions/{uuid4()}" @@ -147,6 +149,7 @@ class Test_app_ensure_python_version_is_latest: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -161,3 +164,4 @@ class Test_app_ensure_python_version_is_latest: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20_test.py b/tests/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20_test.py index 15276daaa5..98739a248f 100644 --- a/tests/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20_test.py +++ b/tests/providers/azure/services/app/app_ensure_using_http20/app_ensure_using_http20_test.py @@ -71,6 +71,7 @@ class Test_app_ensure_using_http20: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_ensure_using_http20: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_http20_enabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_ensure_using_http20: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -125,6 +128,7 @@ class Test_app_ensure_using_http20: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_http20_not_enabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -151,6 +155,7 @@ class Test_app_ensure_using_http20: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -165,3 +170,4 @@ class Test_app_ensure_using_http20: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled_test.py b/tests/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled_test.py index 4670b407f2..56871f607e 100644 --- a/tests/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled_test.py +++ b/tests/providers/azure/services/app/app_ftp_deployment_disabled/app_ftp_deployment_disabled_test.py @@ -71,6 +71,7 @@ class Test_app_ftp_deployment_disabled: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_ftp_deployment_disabled: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_ftp_deployment_disabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_ftp_deployment_disabled: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -125,6 +128,7 @@ class Test_app_ftp_deployment_disabled: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_ftp_deploy_enabled(self): resource_id = f"/subscriptions/{uuid4()}" @@ -151,6 +155,7 @@ class Test_app_ftp_deployment_disabled: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -165,3 +170,4 @@ class Test_app_ftp_deployment_disabled: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_http_logs_enabled/app_http_logs_enabled_test.py b/tests/providers/azure/services/app/app_http_logs_enabled/app_http_logs_enabled_test.py index e008fe35ac..d4a89d5886 100644 --- a/tests/providers/azure/services/app/app_http_logs_enabled/app_http_logs_enabled_test.py +++ b/tests/providers/azure/services/app/app_http_logs_enabled/app_http_logs_enabled_test.py @@ -71,6 +71,7 @@ class Test_app_http_logs_enabled: https_only=False, identity=None, kind="webapps", + location="West Europe", ) } } @@ -114,6 +115,7 @@ class Test_app_http_logs_enabled: https_only=False, kind="functionapp", identity=mock.MagicMock, + location="West Europe", monitor_diagnostic_settings=[ DiagnosticSetting( id="id1/id1", @@ -157,6 +159,7 @@ class Test_app_http_logs_enabled: https_only=False, kind="WebApp", identity=mock.MagicMock, + location="West Europe", monitor_diagnostic_settings=[ DiagnosticSetting( id="id2/id2", diff --git a/tests/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12_test.py b/tests/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12_test.py index 143d70ec4f..9a637b5a9f 100644 --- a/tests/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12_test.py +++ b/tests/providers/azure/services/app/app_minimum_tls_version_12/app_minimum_tls_version_12_test.py @@ -71,6 +71,7 @@ class Test_app_minimum_tls_version_12: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_minimum_tls_version_12: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_min_tls_version_12(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_minimum_tls_version_12: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -125,6 +128,7 @@ class Test_app_minimum_tls_version_12: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_min_tls_version_10(self): resource_id = f"/subscriptions/{uuid4()}" @@ -151,6 +155,7 @@ class Test_app_minimum_tls_version_12: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -165,3 +170,4 @@ class Test_app_minimum_tls_version_12: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_register_with_identity/app_register_with_identity_test.py b/tests/providers/azure/services/app/app_register_with_identity/app_register_with_identity_test.py index 985699a340..a3ca249e70 100644 --- a/tests/providers/azure/services/app/app_register_with_identity/app_register_with_identity_test.py +++ b/tests/providers/azure/services/app/app_register_with_identity/app_register_with_identity_test.py @@ -71,6 +71,7 @@ class Test_app_register_with_identity: client_cert_mode="Ignore", https_only=False, identity=None, + location="West Europe", ) } } @@ -85,6 +86,7 @@ class Test_app_register_with_identity: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" def test_app_identity(self): resource_id = f"/subscriptions/{uuid4()}" @@ -111,6 +113,7 @@ class Test_app_register_with_identity: client_cert_mode="Ignore", https_only=False, identity=mock.MagicMock, + location="West Europe", ) } } @@ -125,3 +128,4 @@ class Test_app_register_with_identity: assert result[0].resource_id == resource_id assert result[0].resource_name == "app_id-1" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "West Europe" diff --git a/tests/providers/azure/services/app/app_service_test.py b/tests/providers/azure/services/app/app_service_test.py index 614ca39787..7eb82633d5 100644 --- a/tests/providers/azure/services/app/app_service_test.py +++ b/tests/providers/azure/services/app/app_service_test.py @@ -86,6 +86,7 @@ class Test_App_Service: auth_enabled=True, client_cert_mode="Required", https_only=True, + location="West Europe", monitor_diagnostic_settings=[ DiagnosticSetting( id="id2/id2", @@ -137,6 +138,10 @@ class Test_App_Service: app_service.apps[AZURE_SUBSCRIPTION_ID]["app_id-1"].client_cert_mode == "Required" ) + assert ( + app_service.apps[AZURE_SUBSCRIPTION_ID]["app_id-1"].location + == "West Europe" + ) assert app_service.apps[AZURE_SUBSCRIPTION_ID]["app_id-1"].https_only assert ( app_service.apps[AZURE_SUBSCRIPTION_ID]["app_id-1"].identity.type diff --git a/tests/providers/azure/services/appinsights/appinsights_ensure_is_configured/appinsights_ensure_is_configured_test.py b/tests/providers/azure/services/appinsights/appinsights_ensure_is_configured/appinsights_ensure_is_configured_test.py index a44b54ef44..300a29b502 100644 --- a/tests/providers/azure/services/appinsights/appinsights_ensure_is_configured/appinsights_ensure_is_configured_test.py +++ b/tests/providers/azure/services/appinsights/appinsights_ensure_is_configured/appinsights_ensure_is_configured_test.py @@ -49,6 +49,7 @@ class Test_appinsights_ensure_is_configured: assert result[0].status == "FAIL" assert result[0].resource_id == "AppInsights" assert result[0].resource_name == "AppInsights" + assert result[0].location == "global" assert ( result[0].status_extended == f"There are no AppInsight configured in susbscription {AZURE_SUBSCRIPTION_ID}." @@ -61,6 +62,7 @@ class Test_appinsights_ensure_is_configured: "app_id-1": Component( resource_id="/subscriptions/resource_id", resource_name="AppInsightsTest", + location="westeurope", ) } } @@ -83,6 +85,7 @@ class Test_appinsights_ensure_is_configured: assert result[0].status == "PASS" assert result[0].resource_id == "AppInsights" assert result[0].resource_name == "AppInsights" + assert result[0].location == "global" assert ( result[0].status_extended == f"There is at least one AppInsight configured in susbscription {AZURE_SUBSCRIPTION_ID}." diff --git a/tests/providers/azure/services/appinsights/appinsights_service_test.py b/tests/providers/azure/services/appinsights/appinsights_service_test.py index 302a476bff..4ec678184f 100644 --- a/tests/providers/azure/services/appinsights/appinsights_service_test.py +++ b/tests/providers/azure/services/appinsights/appinsights_service_test.py @@ -16,6 +16,7 @@ def mock_appinsights_get_components(_): "app_id-1": Component( resource_id="/subscriptions/resource_id", resource_name="AppInsightsTest", + location="westeurope", ) } } @@ -48,3 +49,7 @@ class Test_AppInsights_Service: appinsights.components[AZURE_SUBSCRIPTION_ID]["app_id-1"].resource_name == "AppInsightsTest" ) + assert ( + appinsights.components[AZURE_SUBSCRIPTION_ID]["app_id-1"].location + == "westeurope" + ) diff --git a/tests/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks_test.py b/tests/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks_test.py index 542e1eafb1..067fed149c 100644 --- a/tests/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks_test.py +++ b/tests/providers/azure/services/cosmosdb/cosmosdb_account_firewall_use_selected_networks/cosmosdb_account_firewall_use_selected_networks_test.py @@ -38,7 +38,7 @@ class Test_cosmosdb_account_firewall_use_selected_networks: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, disable_local_auth=None, @@ -69,6 +69,7 @@ class Test_cosmosdb_account_firewall_use_selected_networks: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" def test_accounts_virtual_network_filter_enabled(self): cosmosdb_client = mock.MagicMock @@ -80,7 +81,7 @@ class Test_cosmosdb_account_firewall_use_selected_networks: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, disable_local_auth=None, @@ -111,3 +112,4 @@ class Test_cosmosdb_account_firewall_use_selected_networks: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" diff --git a/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac_test.py b/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac_test.py index 43bf79b4ac..0d4f74a05b 100644 --- a/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac_test.py +++ b/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_aad_and_rbac/cosmosdb_account_use_aad_and_rbac_test.py @@ -38,7 +38,7 @@ class Test_cosmosdb_account_use_aad_and_rbac: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, is_virtual_network_filter_enabled=None, @@ -70,6 +70,7 @@ class Test_cosmosdb_account_use_aad_and_rbac: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" def test_accounts_disable_local_auth_true(self): cosmosdb_client = mock.MagicMock @@ -81,7 +82,7 @@ class Test_cosmosdb_account_use_aad_and_rbac: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, is_virtual_network_filter_enabled=None, @@ -113,3 +114,4 @@ class Test_cosmosdb_account_use_aad_and_rbac: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" diff --git a/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints_test.py b/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints_test.py index 7b0534d4e3..0c34711f6a 100644 --- a/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints_test.py +++ b/tests/providers/azure/services/cosmosdb/cosmosdb_account_use_private_endpoints/cosmosdb_account_use_private_endpoints_test.py @@ -40,7 +40,7 @@ class Test_cosmosdb_account_use_private_endpoints: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, is_virtual_network_filter_enabled=None, @@ -72,6 +72,7 @@ class Test_cosmosdb_account_use_private_endpoints: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" def test_accounts_private_endpoints_connections(self): cosmosdb_client = mock.MagicMock @@ -83,7 +84,7 @@ class Test_cosmosdb_account_use_private_endpoints: id=account_id, name=account_name, kind=None, - location=None, + location="westeu", type=None, tags=None, is_virtual_network_filter_enabled=None, @@ -119,3 +120,4 @@ class Test_cosmosdb_account_use_private_endpoints: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == account_name assert result[0].resource_id == account_id + assert result[0].location == "westeu" diff --git a/tests/providers/azure/services/cosmosdb/cosmosdb_service_test.py b/tests/providers/azure/services/cosmosdb/cosmosdb_service_test.py index fbc02c2f6a..2dec36c68c 100644 --- a/tests/providers/azure/services/cosmosdb/cosmosdb_service_test.py +++ b/tests/providers/azure/services/cosmosdb/cosmosdb_service_test.py @@ -14,7 +14,7 @@ def mock_cosmosdb_get_accounts(_): id="account_id", name="account_name", kind=None, - location=None, + location="westeu", type=None, tags=None, is_virtual_network_filter_enabled=None, @@ -44,7 +44,7 @@ class Test_CosmosDB_Service: assert account.accounts[AZURE_SUBSCRIPTION_ID][0].id == "account_id" assert account.accounts[AZURE_SUBSCRIPTION_ID][0].name == "account_name" assert account.accounts[AZURE_SUBSCRIPTION_ID][0].kind is None - assert account.accounts[AZURE_SUBSCRIPTION_ID][0].location is None + assert account.accounts[AZURE_SUBSCRIPTION_ID][0].location == "westeu" assert account.accounts[AZURE_SUBSCRIPTION_ID][0].type is None assert account.accounts[AZURE_SUBSCRIPTION_ID][0].tags is None assert ( diff --git a/tests/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac_test.py b/tests/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac_test.py index 2f2668795b..ea0de3b960 100644 --- a/tests/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_key_expiration_set_in_non_rbac/keyvault_key_expiration_set_in_non_rbac_test.py @@ -51,7 +51,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: KeyVaultInfo( id="id", name="name", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -92,7 +92,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: id="id", name=key_name, enabled=True, - location="location", + location="westeurope", attributes=KeyAttributes(expires=None, enabled=True), ) keyvault_client.key_vaults = { @@ -100,7 +100,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -123,6 +123,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_valid_keys(self): keyvault_client = mock.MagicMock @@ -148,7 +149,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: id="id", name="name", enabled=True, - location="location", + location="westeurope", attributes=KeyAttributes(expires=49394, enabled=True), ) keyvault_client.key_vaults = { @@ -156,7 +157,7 @@ class Test_keyvault_key_expiration_set_in_non_rbac: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -179,3 +180,4 @@ class Test_keyvault_key_expiration_set_in_non_rbac: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled_test.py b/tests/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled_test.py index 3fe26831df..f9b52c3d30 100644 --- a/tests/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_key_rotation_enabled/keyvault_key_rotation_enabled_test.py @@ -51,7 +51,7 @@ class Test_keyvault_key_rotation_enabled: KeyVaultInfo( id="id", name="name", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -92,7 +92,7 @@ class Test_keyvault_key_rotation_enabled: KeyVaultInfo( id="id", name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -124,6 +124,7 @@ class Test_keyvault_key_rotation_enabled: assert result[0].resource_name == keyvault_name assert result[0].resource_id == "id" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" def test_key_with_rotation_policy(self): keyvault_client = mock.MagicMock @@ -150,7 +151,7 @@ class Test_keyvault_key_rotation_enabled: KeyVaultInfo( id="id", name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -190,3 +191,4 @@ class Test_keyvault_key_rotation_enabled: assert result[0].resource_name == keyvault_name assert result[0].resource_id == "id" assert result[0].subscription == AZURE_SUBSCRIPTION_ID + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled_test.py b/tests/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled_test.py index c2f2d703bb..3843535525 100644 --- a/tests/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_logging_enabled/keyvault_logging_enabled_test.py @@ -81,7 +81,7 @@ class Test_keyvault_logging_enabled: KeyVaultInfo( id="id", name="name_keyvault", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -114,7 +114,7 @@ class Test_keyvault_logging_enabled: KeyVaultInfo( id="id2", name="name_keyvault2", - location="location2", + location="eastus", resource_group="resource_group2", properties=VaultProperties( tenant_id="tenantid", @@ -153,6 +153,7 @@ class Test_keyvault_logging_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "name_diagnostic_setting" assert result[0].resource_id == "id/id" + assert result[0].location == "westeurope" assert ( result[0].status_extended == f"Diagnostic setting name_diagnostic_setting for Key Vault name_keyvault in subscription {AZURE_SUBSCRIPTION_ID} does not have audit logging." @@ -161,6 +162,7 @@ class Test_keyvault_logging_enabled: assert result[1].subscription == AZURE_SUBSCRIPTION_ID assert result[1].resource_name == "name_diagnostic_setting2" assert result[1].resource_id == "id2/id2" + assert result[1].location == "eastus" assert ( result[1].status_extended == f"Diagnostic setting name_diagnostic_setting2 for Key Vault name_keyvault2 in subscription {AZURE_SUBSCRIPTION_ID} has audit logging." diff --git a/tests/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set_test.py b/tests/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set_test.py index c61dcbcbed..2aecdc27c3 100644 --- a/tests/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_non_rbac_secret_expiration_set/keyvault_non_rbac_secret_expiration_set_test.py @@ -51,7 +51,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: KeyVaultInfo( id="id", name="name", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -101,7 +101,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -124,6 +124,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_invalid_multiple_secrets(self): keyvault_client = mock.MagicMock @@ -166,7 +167,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -189,6 +190,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_valid_keys(self): keyvault_client = mock.MagicMock @@ -222,7 +224,7 @@ class Test_keyvault_non_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -245,3 +247,4 @@ class Test_keyvault_non_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints_test.py b/tests/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints_test.py index 25dbc4a869..a6286ca72a 100644 --- a/tests/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_private_endpoints/keyvault_private_endpoints_test.py @@ -56,7 +56,7 @@ class Test_keyvault_private_endpoints: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -81,6 +81,7 @@ class Test_keyvault_private_endpoints: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_using_private_endpoints(self): keyvault_client = mock.MagicMock @@ -109,7 +110,7 @@ class Test_keyvault_private_endpoints: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -136,3 +137,4 @@ class Test_keyvault_private_endpoints: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled_test.py b/tests/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled_test.py index 4ccbdfa4db..721ca6c029 100644 --- a/tests/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_rbac_enabled/keyvault_rbac_enabled_test.py @@ -53,7 +53,7 @@ class Test_keyvault_rbac_enabled: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -76,6 +76,7 @@ class Test_keyvault_rbac_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_rbac(self): keyvault_client = mock.MagicMock @@ -101,7 +102,7 @@ class Test_keyvault_rbac_enabled: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -124,3 +125,4 @@ class Test_keyvault_rbac_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set_test.py b/tests/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set_test.py index 4d388a0540..22e2d0a045 100644 --- a/tests/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_rbac_key_expiration_set/keyvault_rbac_key_expiration_set_test.py @@ -51,7 +51,7 @@ class Test_keyvault_rbac_key_expiration_set: KeyVaultInfo( id="id", name="name", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -100,7 +100,7 @@ class Test_keyvault_rbac_key_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -123,6 +123,7 @@ class Test_keyvault_rbac_key_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_valid_keys(self): keyvault_client = mock.MagicMock @@ -156,7 +157,7 @@ class Test_keyvault_rbac_key_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -179,3 +180,4 @@ class Test_keyvault_rbac_key_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set_test.py b/tests/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set_test.py index d4960931cf..6ca7b23772 100644 --- a/tests/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_rbac_secret_expiration_set/keyvault_rbac_secret_expiration_set_test.py @@ -51,7 +51,7 @@ class Test_keyvault_rbac_secret_expiration_set: KeyVaultInfo( id="id", name="name", - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -100,7 +100,7 @@ class Test_keyvault_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -123,6 +123,7 @@ class Test_keyvault_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_invalid_multiple_secrets(self): keyvault_client = mock.MagicMock @@ -165,7 +166,7 @@ class Test_keyvault_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -188,6 +189,7 @@ class Test_keyvault_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_valid_keys(self): keyvault_client = mock.MagicMock @@ -221,7 +223,7 @@ class Test_keyvault_rbac_secret_expiration_set: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -244,3 +246,4 @@ class Test_keyvault_rbac_secret_expiration_set: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable_test.py b/tests/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable_test.py index b7204b71f2..bb617d3a59 100644 --- a/tests/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable_test.py +++ b/tests/providers/azure/services/keyvault/keyvault_recoverable/keyvault_recoverable_test.py @@ -54,7 +54,7 @@ class Test_keyvault_recoverable: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -79,6 +79,7 @@ class Test_keyvault_recoverable: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_no_soft_delete(self): keyvault_client = mock.MagicMock @@ -119,7 +120,7 @@ class Test_keyvault_recoverable: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -144,6 +145,7 @@ class Test_keyvault_recoverable: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" def test_key_vaults_valid_configuration(self): keyvault_client = mock.MagicMock @@ -177,7 +179,7 @@ class Test_keyvault_recoverable: KeyVaultInfo( id=keyvault_id, name=keyvault_name, - location="location", + location="westeurope", resource_group="resource_group", properties=VaultProperties( tenant_id="tenantid", @@ -202,3 +204,4 @@ class Test_keyvault_recoverable: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == keyvault_name assert result[0].resource_id == keyvault_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/monitor/monitor_diagnostic_settings_exists/monitor_diagnostic_settings_exists_test.py b/tests/providers/azure/services/monitor/monitor_diagnostic_settings_exists/monitor_diagnostic_settings_exists_test.py index f6b537ab45..ebef73b10f 100644 --- a/tests/providers/azure/services/monitor/monitor_diagnostic_settings_exists/monitor_diagnostic_settings_exists_test.py +++ b/tests/providers/azure/services/monitor/monitor_diagnostic_settings_exists/monitor_diagnostic_settings_exists_test.py @@ -133,6 +133,7 @@ class Test_monitor_diagnostic_settings_exists: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", @@ -153,6 +154,7 @@ class Test_monitor_diagnostic_settings_exists: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", diff --git a/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted_test.py b/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted_test.py index cc521d14b5..8076704a57 100644 --- a/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted_test.py +++ b/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_cmk_encrypted/monitor_storage_account_with_activity_logs_cmk_encrypted_test.py @@ -123,6 +123,7 @@ class Test_monitor_storage_account_with_activity_logs_cmk_encrypted: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", @@ -143,6 +144,7 @@ class Test_monitor_storage_account_with_activity_logs_cmk_encrypted: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", @@ -160,6 +162,7 @@ class Test_monitor_storage_account_with_activity_logs_cmk_encrypted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].status == "PASS" assert result[0].resource_name == "storageaccountname1" + assert result[0].location == "euwest" assert ( result[0].resource_id == "/subscriptions/1234a5-123a-123a-123a-1234567890ab/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storageaccountname1" @@ -170,6 +173,7 @@ class Test_monitor_storage_account_with_activity_logs_cmk_encrypted: ) assert result[1].status == "FAIL" assert result[1].resource_name == "storageaccountname2" + assert result[1].location == "euwest" assert ( result[1].resource_id == "/subscriptions/1224a5-123a-123a-123a-1234567890ab/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storageaccountname2" diff --git a/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private_test.py b/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private_test.py index 826e403563..336186ba0a 100644 --- a/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private_test.py +++ b/tests/providers/azure/services/monitor/monitor_storage_account_with_activity_logs_is_private/monitor_storage_account_with_activity_logs_is_private_test.py @@ -123,6 +123,7 @@ class Test_monitor_storage_account_with_activity_logs_is_private: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", @@ -143,6 +144,7 @@ class Test_monitor_storage_account_with_activity_logs_is_private: minimum_tls_version="TLS1_2", private_endpoint_connections=[], key_expiration_period_in_days=365, + location="euwest", blob_properties=mock.MagicMock( id="id", name="name", @@ -158,6 +160,7 @@ class Test_monitor_storage_account_with_activity_logs_is_private: assert len(result) == 2 assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].status == "FAIL" + assert result[0].location == "euwest" assert ( result[0].resource_id == "/subscriptions/1234a5-123a-123a-123a-1234567890ab/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storageaccountname1" @@ -169,6 +172,7 @@ class Test_monitor_storage_account_with_activity_logs_is_private: ) assert result[1].subscription == AZURE_SUBSCRIPTION_ID assert result[1].status == "PASS" + assert result[1].location == "euwest" assert ( result[1].resource_id == "/subscriptions/1224a5-123a-123a-123a-1234567890ab/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storageaccountname2" diff --git a/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated_test.py b/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated_test.py index 986c19dde2..58f0ae0eb2 100644 --- a/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated_test.py +++ b/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_connection_activated/mysql_flexible_server_audit_log_connection_activated_test.py @@ -87,6 +87,7 @@ class Test_mysql_flexible_server_audit_log_connection_activated: assert result[0].status == "FAIL" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/audit_log_events" @@ -133,6 +134,7 @@ class Test_mysql_flexible_server_audit_log_connection_activated: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/audit_log_events" @@ -179,6 +181,7 @@ class Test_mysql_flexible_server_audit_log_connection_activated: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/audit_log_events" diff --git a/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled_test.py b/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled_test.py index 57147d03f1..41f6c9ae2c 100644 --- a/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled_test.py +++ b/tests/providers/azure/services/mysql/mysql_flexible_server_audit_log_enabled/mysql_flexible_server_audit_log_enabled_test.py @@ -87,6 +87,7 @@ class Test_mysql_flexible_server_audit_log_enabled: assert result[0].status == "FAIL" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/audit_log_enabled" @@ -133,6 +134,7 @@ class Test_mysql_flexible_server_audit_log_enabled: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/audit_log_enabled" diff --git a/tests/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12_test.py b/tests/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12_test.py index 5eb26f3fc6..bc45dc5ac2 100644 --- a/tests/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12_test.py +++ b/tests/providers/azure/services/mysql/mysql_flexible_server_minimum_tls_version_12/mysql_flexible_server_minimum_tls_version_12_test.py @@ -81,6 +81,7 @@ class Test_mysql_flexible_server_minimum_tls_version_12: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name assert result[0].resource_id == server_name + assert result[0].location == "location" assert ( result[0].status_extended == f"TLS version is not configured in server {server_name} in subscription {AZURE_SUBSCRIPTION_ID}." @@ -122,6 +123,7 @@ class Test_mysql_flexible_server_minimum_tls_version_12: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/tls_version" @@ -167,6 +169,7 @@ class Test_mysql_flexible_server_minimum_tls_version_12: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/tls_version" @@ -212,6 +215,7 @@ class Test_mysql_flexible_server_minimum_tls_version_12: assert result[0].status == "FAIL" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/tls_version" @@ -257,6 +261,7 @@ class Test_mysql_flexible_server_minimum_tls_version_12: assert result[0].status == "FAIL" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/tls_version" diff --git a/tests/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled_test.py b/tests/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled_test.py index e60d96d4c2..0b14c7161f 100644 --- a/tests/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled_test.py +++ b/tests/providers/azure/services/mysql/mysql_flexible_server_ssl_connection_enabled/mysql_flexible_server_ssl_connection_enabled_test.py @@ -87,6 +87,7 @@ class Test_mysql_flexible_server_ssl_connection_enabled: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/require_secure_transport" @@ -133,6 +134,7 @@ class Test_mysql_flexible_server_ssl_connection_enabled: assert result[0].status == "FAIL" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name}/configurations/require_secure_transport" @@ -174,6 +176,7 @@ class Test_mysql_flexible_server_ssl_connection_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name assert result[0].resource_id == server_name + assert result[0].location == "location" assert ( result[0].status_extended == f"SSL connection is disabled for server {server_name} in subscription {AZURE_SUBSCRIPTION_ID}." @@ -229,6 +232,7 @@ class Test_mysql_flexible_server_ssl_connection_enabled: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == server_name_1 + assert result[0].location == "location" assert ( result[0].resource_id == f"/subscriptions/{server_name_1}/configurations/require_secure_transport" @@ -240,6 +244,7 @@ class Test_mysql_flexible_server_ssl_connection_enabled: assert result[1].status == "FAIL" assert result[1].subscription == AZURE_SUBSCRIPTION_ID assert result[1].resource_name == server_name_2 + assert result[0].location == "location" assert ( result[1].resource_id == f"/subscriptions/{server_name_2}/configurations/require_secure_transport" diff --git a/tests/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists_test.py b/tests/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists_test.py index d1574bc4b0..9ee603c45b 100644 --- a/tests/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists_test.py +++ b/tests/providers/azure/services/network/network_bastion_host_exists/network_bastion_host_exists_test.py @@ -37,7 +37,7 @@ class Test_network_bastion_host_exists: ) assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "Bastion Host" - assert result[0].resource_id == "N/A" + assert result[0].resource_id == "Bastion Host" def test_network_bastion_host_exists(self): network_client = mock.MagicMock @@ -78,4 +78,4 @@ class Test_network_bastion_host_exists: ) assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "Bastion Host" - assert result[0].resource_id == bastion_host_id + assert result[0].resource_id == "Bastion Host" diff --git a/tests/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent_test.py b/tests/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent_test.py index 2583ffa489..e33d6af3ca 100644 --- a/tests/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent_test.py +++ b/tests/providers/azure/services/network/network_flow_log_captured_sent/network_flow_log_captured_sent_test.py @@ -65,6 +65,7 @@ class Test_network_flow_log_captured_sent: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_network_watchers_flow_logs_disabled(self): network_client = mock.MagicMock @@ -109,6 +110,7 @@ class Test_network_flow_log_captured_sent: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_network_watchers_flow_logs_well_configured(self): network_client = mock.MagicMock @@ -146,6 +148,7 @@ class Test_network_flow_log_captured_sent: result = check.execute() assert len(result) == 1 assert result[0].status == "PASS" + assert result[0].location == "location" assert ( result[0].status_extended == f"Network Watcher {network_watcher_name} from subscription {AZURE_SUBSCRIPTION_ID} has flow logs that are captured and sent to Log Analytics workspace" diff --git a/tests/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days_test.py b/tests/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days_test.py index 94ad63ecfa..253daef706 100644 --- a/tests/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days_test.py +++ b/tests/providers/azure/services/network/network_flow_log_more_than_90_days/network_flow_log_more_than_90_days_test.py @@ -74,6 +74,7 @@ class Test_network_flow_log_more_than_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_network_watchers_flow_logs_disabled(self): network_client = mock.MagicMock @@ -121,6 +122,7 @@ class Test_network_flow_log_more_than_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_network_watchers_flow_logs_retention_days_80(self): network_client = mock.MagicMock @@ -168,6 +170,7 @@ class Test_network_flow_log_more_than_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_network_watchers_flow_logs_well_configured(self): network_client = mock.MagicMock @@ -215,3 +218,4 @@ class Test_network_flow_log_more_than_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted_test.py b/tests/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted_test.py index a58642f0f2..4f1cbe7bf1 100644 --- a/tests/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted_test.py +++ b/tests/providers/azure/services/network/network_http_internet_access_restricted/network_http_internet_access_restricted_test.py @@ -74,6 +74,7 @@ class Test_network_http_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules(self): network_client = mock.MagicMock @@ -124,6 +125,7 @@ class Test_network_http_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules_range(self): network_client = mock.MagicMock @@ -174,6 +176,7 @@ class Test_network_http_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_valid_security_rules(self): network_client = mock.MagicMock @@ -224,3 +227,4 @@ class Test_network_http_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan_test.py b/tests/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan_test.py index e550734178..ef7e6f9059 100644 --- a/tests/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan_test.py +++ b/tests/providers/azure/services/network/network_public_ip_shodan/network_public_ip_shodan_test.py @@ -48,7 +48,7 @@ class Test_network_public_ip_shodan: PublicIp( id=public_ip_id, name=public_ip_name, - location=None, + location="location", ip_address=ip_address, ) ] @@ -83,3 +83,4 @@ class Test_network_public_ip_shodan: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == public_ip_name assert result[0].resource_id == public_ip_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted_test.py b/tests/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted_test.py index 70fefae20f..d311b9f0f5 100644 --- a/tests/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted_test.py +++ b/tests/providers/azure/services/network/network_rdp_internet_access_restricted/network_rdp_internet_access_restricted_test.py @@ -74,6 +74,7 @@ class Test_network_rdp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_valid_security_rules(self): network_client = mock.MagicMock @@ -124,6 +125,7 @@ class Test_network_rdp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules_range(self): network_client = mock.MagicMock @@ -174,3 +176,4 @@ class Test_network_rdp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted_test.py b/tests/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted_test.py index debecb423c..fd3e75d2b4 100644 --- a/tests/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted_test.py +++ b/tests/providers/azure/services/network/network_ssh_internet_access_restricted/network_ssh_internet_access_restricted_test.py @@ -74,6 +74,7 @@ class Test_network_ssh_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules(self): network_client = mock.MagicMock @@ -124,6 +125,7 @@ class Test_network_ssh_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules_range(self): network_client = mock.MagicMock @@ -174,6 +176,7 @@ class Test_network_ssh_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_valid_security_rules(self): network_client = mock.MagicMock @@ -224,3 +227,4 @@ class Test_network_ssh_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted_test.py b/tests/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted_test.py index d8a99dc9bf..773b98934a 100644 --- a/tests/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted_test.py +++ b/tests/providers/azure/services/network/network_udp_internet_access_restricted/network_udp_internet_access_restricted_test.py @@ -74,6 +74,7 @@ class Test_network_udp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_invalid_security_rules(self): network_client = mock.MagicMock @@ -123,6 +124,7 @@ class Test_network_udp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" def test_network_security_groups_valid_security_rules(self): network_client = mock.MagicMock @@ -172,3 +174,4 @@ class Test_network_udp_internet_access_restricted: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == security_group_name assert result[0].resource_id == security_group_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled_test.py b/tests/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled_test.py index 3e7c4afb10..65855d73d6 100644 --- a/tests/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled_test.py +++ b/tests/providers/azure/services/network/network_watcher_enabled/network_watcher_enabled_test.py @@ -76,6 +76,7 @@ class Test_network_watcher_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" def test_network_valid_network_watchers(self): network_client = mock.MagicMock @@ -120,3 +121,4 @@ class Test_network_watcher_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == network_watcher_name assert result[0].resource_id == network_watcher_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/policy/policy_ensure_asc_enforcement_enabled/policy_ensure_asc_enforcement_enabled_test.py b/tests/providers/azure/services/policy/policy_ensure_asc_enforcement_enabled/policy_ensure_asc_enforcement_enabled_test.py index e9702a209e..1233961796 100644 --- a/tests/providers/azure/services/policy/policy_ensure_asc_enforcement_enabled/policy_ensure_asc_enforcement_enabled_test.py +++ b/tests/providers/azure/services/policy/policy_ensure_asc_enforcement_enabled/policy_ensure_asc_enforcement_enabled_test.py @@ -111,7 +111,8 @@ class Test_policy_ensure_asc_enforcement_enabled: policy_client.policy_assigments = { AZURE_SUBSCRIPTION_ID: { "SecurityCenterBuiltIn": PolicyAssigment( - id=resource_id, enforcement_mode="DoNotEnforce" + id=resource_id, + enforcement_mode="DoNotEnforce", ) } } diff --git a/tests/providers/azure/services/policy/policy_service_test.py b/tests/providers/azure/services/policy/policy_service_test.py index fbd91e7f02..7bb63e093f 100644 --- a/tests/providers/azure/services/policy/policy_service_test.py +++ b/tests/providers/azure/services/policy/policy_service_test.py @@ -22,7 +22,7 @@ def mock_policy_assigments(_): "prowler.providers.azure.services.policy.policy_service.Policy.__get_policy_assigments__", new=mock_policy_assigments, ) -class Test_AppInsights_Service: +class Test_Policy_Service: def test__get_client__(self): policy = Policy(set_mocked_azure_provider()) assert ( diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled_test.py index 8a5dd2ccfb..75237f9d35 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_allow_access_services_disabled/postgresql_flexible_server_allow_access_services_disabled_test.py @@ -54,6 +54,7 @@ class Test_postgresql_flexible_server_allow_access_services_disabled: connection_throttling="OFF", log_retention_days="3", firewall=[firewall], + location="location", ) ] } @@ -80,6 +81,7 @@ class Test_postgresql_flexible_server_allow_access_services_disabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_dont_allow_public_access(self): postgresql_client = mock.MagicMock @@ -104,6 +106,7 @@ class Test_postgresql_flexible_server_allow_access_services_disabled: connection_throttling="OFF", log_retention_days="3", firewall=[firewall], + location="location", ) ] } @@ -130,3 +133,4 @@ class Test_postgresql_flexible_server_allow_access_services_disabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on_test.py index 7170d60b0a..cae9f91dc7 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_connection_throttling_on/postgresql_flexible_server_connection_throttling_on_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_connection_throttling_on: connection_throttling="OFF", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_connection_throttling_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_connection_throttling_on(self): postgresql_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_postgresql_flexible_server_connection_throttling_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_postgresql_flexible_server_connection_throttling_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled_test.py index da5a4a19c4..43c125afad 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_enforce_ssl_enabled/postgresql_flexible_server_enforce_ssl_enabled_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_enforce_ssl_enabled: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_enforce_ssl_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_require_secure_transport_on(self): postgresql_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_postgresql_flexible_server_enforce_ssl_enabled: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_postgresql_flexible_server_enforce_ssl_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on_test.py index 2851a88df7..5460c39c12 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_checkpoints_on/postgresql_flexible_server_log_checkpoints_on_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_log_checkpoints_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_log_checkpoints_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_checkpoints_on(self): postgresql_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_postgresql_flexible_server_log_checkpoints_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_postgresql_flexible_server_log_checkpoints_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on_test.py index e2032a76e2..93b7dfbfb2 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_connections_on/postgresql_flexible_server_log_connections_on_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_log_connections_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_log_connections_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_connections_on(self): postgresql_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_postgresql_flexible_server_log_connections_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_postgresql_flexible_server_log_connections_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on_test.py index acb5a93c0b..5dfbed7f0f 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_disconnections_on/postgresql_flexible_server_log_disconnections_on_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_log_disconnections_on: connection_throttling="OFF", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_log_disconnections_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_connections_on(self): postgresql_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_postgresql_flexible_server_log_disconnections_on: connection_throttling="ON", log_retention_days="3", firewall=None, + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_postgresql_flexible_server_log_disconnections_on: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3_test.py b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3_test.py index 3163753dfe..11d6cd4694 100644 --- a/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_flexible_server_log_retention_days_greater_3/postgresql_flexible_server_log_retention_days_greater_3_test.py @@ -45,6 +45,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: connection_throttling="OFF", log_retention_days=None, firewall=None, + location="location", ) ] } @@ -71,6 +72,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_retention_days_3(self): postgresql_client = mock.MagicMock @@ -90,6 +92,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: connection_throttling="OFF", log_retention_days=log_retention_days, firewall=None, + location="location", ) ] } @@ -116,6 +119,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_retention_days_4(self): postgresql_client = mock.MagicMock @@ -135,6 +139,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: connection_throttling="OFF", log_retention_days=log_retention_days, firewall=None, + location="location", ) ] } @@ -161,6 +166,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" def test_flexible_servers_log_retention_days_8(self): postgresql_client = mock.MagicMock @@ -180,6 +186,7 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: connection_throttling="OFF", log_retention_days=log_retention_days, firewall=None, + location="location", ) ] } @@ -206,3 +213,4 @@ class Test_postgresql_flexible_server_log_retention_days_greater_3: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == postgresql_server_name assert result[0].resource_id == postgresql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/postgresql/postgresql_service_test.py b/tests/providers/azure/services/postgresql/postgresql_service_test.py index 43922818ce..a36134ce09 100644 --- a/tests/providers/azure/services/postgresql/postgresql_service_test.py +++ b/tests/providers/azure/services/postgresql/postgresql_service_test.py @@ -31,6 +31,7 @@ def mock_sqlserver_get_postgresql_flexible_servers(_): connection_throttling="ON", log_retention_days="3", firewall=[firewall], + location="location", ) ] } @@ -56,6 +57,9 @@ class Test_SqlServer_Service: ) assert postgesql.flexible_servers[AZURE_SUBSCRIPTION_ID][0].id == "id" assert postgesql.flexible_servers[AZURE_SUBSCRIPTION_ID][0].name == "name" + assert ( + postgesql.flexible_servers[AZURE_SUBSCRIPTION_ID][0].location == "location" + ) assert ( postgesql.flexible_servers[AZURE_SUBSCRIPTION_ID][0].resource_group == "resource_group" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled_test.py index 312251c1af..d3dac1036b 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_auditing_enabled/sqlserver_auditing_enabled_test.py @@ -48,7 +48,8 @@ class Test_sqlserver_auditing_enabled: administrators=ServerExternalAdministrator(), auditing_policies=[ServerBlobAuditingPolicy(state="Disabled")], firewall_rules=FirewallRule(), - ) + location="location", + ), ] } @@ -74,6 +75,7 @@ class Test_sqlserver_auditing_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_auditing_enabled(self): sqlserver_client = mock.MagicMock @@ -89,6 +91,7 @@ class Test_sqlserver_auditing_enabled: administrators=ServerExternalAdministrator(), auditing_policies=[ServerBlobAuditingPolicy(state="Enabled")], firewall_rules=FirewallRule(), + location="location", ) ] } @@ -115,3 +118,4 @@ class Test_sqlserver_auditing_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days_test.py b/tests/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days_test.py index 4edbb621b1..a521b9a9e1 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_auditing_retention_90_days/sqlserver_auditing_retention_90_days_test.py @@ -46,6 +46,7 @@ class Test_sqlserver_auditing_retention_90_days: firewall_rules=None, databases=None, encryption_protector=None, + location="location", ) ] } @@ -72,6 +73,7 @@ class Test_sqlserver_auditing_retention_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_auditing_retention_less_than_90_days(self): sqlserver_client = mock.MagicMock @@ -91,6 +93,7 @@ class Test_sqlserver_auditing_retention_90_days: firewall_rules=None, databases=None, encryption_protector=None, + location="location", ) ] } @@ -117,6 +120,7 @@ class Test_sqlserver_auditing_retention_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_auditing_retention_greater_than_90_days(self): sqlserver_client = mock.MagicMock @@ -136,6 +140,7 @@ class Test_sqlserver_auditing_retention_90_days: firewall_rules=None, databases=None, encryption_protector=None, + location="location", ) ] } @@ -162,6 +167,7 @@ class Test_sqlserver_auditing_retention_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_two_auditing_policies_with_auditing_retention_greater_than_90_days( self, @@ -184,6 +190,7 @@ class Test_sqlserver_auditing_retention_90_days: firewall_rules=None, databases=None, encryption_protector=None, + location="location", ) ] } @@ -210,6 +217,7 @@ class Test_sqlserver_auditing_retention_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_two_auditing_policies_with_one_auditing_retention_less_than_90_days( self, @@ -232,6 +240,7 @@ class Test_sqlserver_auditing_retention_90_days: firewall_rules=None, databases=None, encryption_protector=None, + location="location", ) ] } @@ -258,3 +267,4 @@ class Test_sqlserver_auditing_retention_90_days: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled_test.py index ac3a38f5ef..9fb5311545 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_azuread_administrator_enabled/sqlserver_azuread_administrator_enabled_test.py @@ -44,6 +44,7 @@ class Test_sqlserver_azuread_administrator_enabled: administrators=None, auditing_policies=[], firewall_rules=None, + location="location", ) ] } @@ -70,6 +71,7 @@ class Test_sqlserver_azuread_administrator_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_azuread_administrator_no_active_directory(self): sqlserver_client = mock.MagicMock @@ -87,6 +89,7 @@ class Test_sqlserver_azuread_administrator_enabled: ), auditing_policies=[], firewall_rules=None, + location="location", ) ] } @@ -113,6 +116,7 @@ class Test_sqlserver_azuread_administrator_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_azuread_administrator_active_directory(self): sqlserver_client = mock.MagicMock @@ -130,6 +134,7 @@ class Test_sqlserver_azuread_administrator_enabled: ), auditing_policies=[], firewall_rules=None, + location="location", ) ] } @@ -156,3 +161,4 @@ class Test_sqlserver_azuread_administrator_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled_test.py index c31853a11d..5e8e5baad3 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_microsoft_defender_enabled/sqlserver_microsoft_defender_enabled_test.py @@ -45,6 +45,7 @@ class Test_sqlserver_microsoft_defender_enabled: auditing_policies=[], firewall_rules=None, security_alert_policies=None, + location="location", ) ] } @@ -79,6 +80,7 @@ class Test_sqlserver_microsoft_defender_enabled: auditing_policies=[], firewall_rules=None, security_alert_policies=ServerSecurityAlertPolicy(state="Disabled"), + location="location", ) ] } @@ -105,6 +107,7 @@ class Test_sqlserver_microsoft_defender_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_microsoft_defender_enabled(self): sqlserver_client = mock.MagicMock @@ -121,6 +124,7 @@ class Test_sqlserver_microsoft_defender_enabled: auditing_policies=[], firewall_rules=None, security_alert_policies=ServerSecurityAlertPolicy(state="Enabled"), + location="location", ) ] } @@ -147,3 +151,4 @@ class Test_sqlserver_microsoft_defender_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_service_test.py b/tests/providers/azure/services/sqlserver/sqlserver_service_test.py index 061ef8c77a..0c2c7704d0 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_service_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_service_test.py @@ -34,6 +34,7 @@ def mock_sqlserver_get_sql_servers(_): Server( id="id", name="name", + location="location", public_network_access="public_network_access", minimal_tls_version="minimal_tls_version", administrators=None, @@ -80,6 +81,7 @@ class Test_SqlServer_Service: ) assert sql_server.sql_servers[AZURE_SUBSCRIPTION_ID][0].id == "id" assert sql_server.sql_servers[AZURE_SUBSCRIPTION_ID][0].name == "name" + assert sql_server.sql_servers[AZURE_SUBSCRIPTION_ID][0].location == "location" assert ( sql_server.sql_servers[AZURE_SUBSCRIPTION_ID][0].public_network_access == "public_network_access" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk_test.py b/tests/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk_test.py index cff24f9bc9..ba224cc9bd 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_tde_encrypted_with_cmk/sqlserver_tde_encrypted_with_cmk_test.py @@ -48,6 +48,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: auditing_policies=None, firewall_rules=None, databases=None, + location="location", ) ] } @@ -84,6 +85,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -119,6 +121,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_database_encryption_disabled(self): sqlserver_client = mock.MagicMock @@ -137,6 +140,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -172,6 +176,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_database_encryption_enabled(self): sqlserver_client = mock.MagicMock @@ -190,6 +195,7 @@ class Test_sqlserver_tde_encrypted_with_cmk: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -225,3 +231,4 @@ class Test_sqlserver_tde_encrypted_with_cmk: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled_test.py index 9a21a83486..6f2f0dcc30 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_tde_encryption_enabled/sqlserver_tde_encryption_enabled_test.py @@ -48,6 +48,7 @@ class Test_sqlserver_tde_encryption_enabled: auditing_policies=None, firewall_rules=None, databases=None, + location="location", ) ] } @@ -93,6 +94,7 @@ class Test_sqlserver_tde_encryption_enabled: firewall_rules=None, databases=[database], encryption_protector=None, + location="location", ) ] } @@ -119,6 +121,7 @@ class Test_sqlserver_tde_encryption_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == database_name assert result[0].resource_id == database_id + assert result[0].location == "location" def test_sql_servers_database_encryption_enabled(self): sqlserver_client = mock.MagicMock @@ -146,6 +149,7 @@ class Test_sqlserver_tde_encryption_enabled: firewall_rules=None, databases=[database], encryption_protector=None, + location="location", ) ] } @@ -172,3 +176,4 @@ class Test_sqlserver_tde_encryption_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == database_name assert result[0].resource_id == database_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access_test.py b/tests/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access_test.py index d322e3b07d..d7a780bed8 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_unrestricted_inbound_access/sqlserver_unrestricted_inbound_access_test.py @@ -39,6 +39,7 @@ class Test_sqlserver_unrestricted_inbound_access: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -74,6 +75,7 @@ class Test_sqlserver_unrestricted_inbound_access: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_restricted_inbound_access(self): sqlserver_client = mock.MagicMock @@ -84,6 +86,7 @@ class Test_sqlserver_unrestricted_inbound_access: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -119,3 +122,4 @@ class Test_sqlserver_unrestricted_inbound_access: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled_test.py index 5baaa84061..d27d9744b2 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_va_emails_notifications_admins_enabled/sqlserver_va_emails_notifications_admins_enabled_test.py @@ -50,6 +50,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: databases=None, encryption_protector=None, vulnerability_assessment=None, + location="location", ) ] } @@ -76,6 +77,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_no_vulnerability_assessment_no_admin_emails(self): sqlserver_client = mock.MagicMock @@ -86,6 +88,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -125,6 +128,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_admin_emails_false(self): sqlserver_client = mock.MagicMock @@ -135,6 +139,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -174,6 +179,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_no_email_subscription_admins(self): sqlserver_client = mock.MagicMock @@ -184,6 +190,7 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -223,3 +230,4 @@ class Test_sqlserver_va_emails_notifications_admins_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled_test.py index f7cb64840c..171ccf49ec 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_va_periodic_recurring_scans_enabled/sqlserver_va_periodic_recurring_scans_enabled_test.py @@ -50,6 +50,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: databases=None, encryption_protector=None, vulnerability_assessment=None, + location="location", ) ] } @@ -76,6 +77,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_no_vulnerability_assessment_storage_container_path(self): sqlserver_client = mock.MagicMock @@ -86,6 +88,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -122,6 +125,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_recuring_scans_disabled(self): sqlserver_client = mock.MagicMock @@ -132,6 +136,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -171,6 +176,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_recuring_scans_enabled(self): sqlserver_client = mock.MagicMock @@ -181,6 +187,7 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -220,3 +227,4 @@ class Test_sqlserver_va_periodic_recurring_scans_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured_test.py b/tests/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured_test.py index 741cc0733a..fa4f43eced 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_va_scan_reports_configured/sqlserver_va_scan_reports_configured_test.py @@ -42,6 +42,7 @@ class Test_sqlserver_va_scan_reports_configured: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -76,6 +77,7 @@ class Test_sqlserver_va_scan_reports_configured: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_no_vulnerability_assessment_emails(self): sqlserver_client = mock.MagicMock @@ -86,6 +88,7 @@ class Test_sqlserver_va_scan_reports_configured: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -125,6 +128,7 @@ class Test_sqlserver_va_scan_reports_configured: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_emails_none(self): sqlserver_client = mock.MagicMock @@ -135,6 +139,7 @@ class Test_sqlserver_va_scan_reports_configured: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -174,6 +179,7 @@ class Test_sqlserver_va_scan_reports_configured: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_no_email_subscription_admins(self): sqlserver_client = mock.MagicMock @@ -184,6 +190,7 @@ class Test_sqlserver_va_scan_reports_configured: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -223,6 +230,7 @@ class Test_sqlserver_va_scan_reports_configured: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_both_emails(self): sqlserver_client = mock.MagicMock @@ -233,6 +241,7 @@ class Test_sqlserver_va_scan_reports_configured: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -272,3 +281,4 @@ class Test_sqlserver_va_scan_reports_configured: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled_test.py b/tests/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled_test.py index 7720edb242..05915b07c6 100644 --- a/tests/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled_test.py +++ b/tests/providers/azure/services/sqlserver/sqlserver_vulnerability_assessment_enabled/sqlserver_vulnerability_assessment_enabled_test.py @@ -54,6 +54,7 @@ class Test_sqlserver_vulnerability_assessment_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -90,6 +91,7 @@ class Test_sqlserver_vulnerability_assessment_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_no_vulnerability_assessment_path(self): sqlserver_client = mock.MagicMock @@ -108,6 +110,7 @@ class Test_sqlserver_vulnerability_assessment_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -146,6 +149,7 @@ class Test_sqlserver_vulnerability_assessment_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" def test_sql_servers_vulnerability_assessment_enabled(self): sqlserver_client = mock.MagicMock @@ -164,6 +168,7 @@ class Test_sqlserver_vulnerability_assessment_enabled: Server( id=sql_server_id, name=sql_server_name, + location="location", public_network_access="", minimal_tls_version="", administrators=None, @@ -202,3 +207,4 @@ class Test_sqlserver_vulnerability_assessment_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == sql_server_name assert result[0].resource_id == sql_server_id + assert result[0].location == "location" diff --git a/tests/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled_test.py b/tests/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled_test.py index f27a15c0eb..f84a65508f 100644 --- a/tests/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled_test.py +++ b/tests/providers/azure/services/storage/storage_blob_public_access_level_is_disabled/storage_blob_public_access_level_is_disabled_test.py @@ -45,6 +45,7 @@ class Test_storage_blob_public_access_level_is_disabled: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -72,6 +73,7 @@ class Test_storage_blob_public_access_level_is_disabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_public_access_level_disabled(self): storage_account_id = str(uuid4()) @@ -90,6 +92,7 @@ class Test_storage_blob_public_access_level_is_disabled: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -117,3 +120,4 @@ class Test_storage_blob_public_access_level_is_disabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied_test.py b/tests/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied_test.py index 1b0a48c3a4..6310e6907c 100644 --- a/tests/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied_test.py +++ b/tests/providers/azure/services/storage/storage_default_network_access_rule_is_denied/storage_default_network_access_rule_is_denied_test.py @@ -47,6 +47,7 @@ class Test_storage_default_network_access_rule_is_denied: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -74,6 +75,7 @@ class Test_storage_default_network_access_rule_is_denied: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_default_network_access_rule_denied(self): storage_account_id = str(uuid4()) @@ -92,6 +94,7 @@ class Test_storage_default_network_access_rule_is_denied: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -119,3 +122,4 @@ class Test_storage_default_network_access_rule_is_denied: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled_test.py b/tests/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled_test.py index bdc3d6d406..0a26d1aad9 100644 --- a/tests/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled_test.py +++ b/tests/providers/azure/services/storage/storage_ensure_azure_services_are_trusted_to_access_is_enabled/storage_ensure_azure_services_are_trusted_to_access_is_enabled_test.py @@ -47,6 +47,7 @@ class Test_storage_ensure_azure_services_are_trusted_to_access_is_enabled: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -74,6 +75,7 @@ class Test_storage_ensure_azure_services_are_trusted_to_access_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_azure_services_are_trusted_to_access(self): storage_account_id = str(uuid4()) @@ -92,6 +94,7 @@ class Test_storage_ensure_azure_services_are_trusted_to_access_is_enabled: encryption_type=None, minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -119,3 +122,4 @@ class Test_storage_ensure_azure_services_are_trusted_to_access_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys_test.py b/tests/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys_test.py index 513ba06374..71615509d8 100644 --- a/tests/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys_test.py +++ b/tests/providers/azure/services/storage/storage_ensure_encryption_with_customer_managed_keys/storage_ensure_encryption_with_customer_managed_keys_test.py @@ -45,6 +45,7 @@ class Test_storage_ensure_encryption_with_customer_managed_keys: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -72,6 +73,7 @@ class Test_storage_ensure_encryption_with_customer_managed_keys: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_encryption_with_customer_managed_keys(self): storage_account_id = str(uuid4()) @@ -90,6 +92,7 @@ class Test_storage_ensure_encryption_with_customer_managed_keys: encryption_type="Microsoft.Keyvault", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -117,3 +120,4 @@ class Test_storage_ensure_encryption_with_customer_managed_keys: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12_test.py b/tests/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12_test.py index e16535f99f..bcd35040d0 100644 --- a/tests/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12_test.py +++ b/tests/providers/azure/services/storage/storage_ensure_minimum_tls_version_12/storage_ensure_minimum_tls_version_12_test.py @@ -45,6 +45,7 @@ class Test_storage_ensure_minimum_tls_version_12: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -72,6 +73,7 @@ class Test_storage_ensure_minimum_tls_version_12: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_tls_1_2(self): storage_account_id = str(uuid4()) @@ -90,6 +92,7 @@ class Test_storage_ensure_minimum_tls_version_12: encryption_type="None", minimum_tls_version="TLS1_2", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -117,3 +120,4 @@ class Test_storage_ensure_minimum_tls_version_12: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts_test.py b/tests/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts_test.py index 55ac56e42d..6b8e4d0d2b 100644 --- a/tests/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts_test.py +++ b/tests/providers/azure/services/storage/storage_ensure_private_endpoints_in_storage_accounts/storage_ensure_private_endpoints_in_storage_accounts_test.py @@ -49,6 +49,7 @@ class Test_storage_ensure_private_endpoints_in_storage_accounts: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -76,6 +77,7 @@ class Test_storage_ensure_private_endpoints_in_storage_accounts: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_ensure_private_endpoints_in_storage_accounts_has_endpoints( self, @@ -96,6 +98,7 @@ class Test_storage_ensure_private_endpoints_in_storage_accounts: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=PrivateEndpointConnection(), ) ] @@ -123,3 +126,4 @@ class Test_storage_ensure_private_endpoints_in_storage_accounts: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled_test.py b/tests/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled_test.py index e1af12c3aa..fc547f5aeb 100644 --- a/tests/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled_test.py +++ b/tests/providers/azure/services/storage/storage_ensure_soft_delete_is_enabled/storage_ensure_soft_delete_is_enabled_test.py @@ -51,6 +51,7 @@ class Test_storage_ensure_soft_delete_is_enabled: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, blob_properties=storage_account_blob_properties, ) @@ -98,6 +99,7 @@ class Test_storage_ensure_soft_delete_is_enabled: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, blob_properties=storage_account_blob_properties, ) @@ -126,6 +128,7 @@ class Test_storage_ensure_soft_delete_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_ensure_soft_delete_is_enabled( self, @@ -153,6 +156,7 @@ class Test_storage_ensure_soft_delete_is_enabled: encryption_type="None", minimum_tls_version=None, key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, blob_properties=storage_account_blob_properties, ) @@ -181,3 +185,4 @@ class Test_storage_ensure_soft_delete_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled_test.py b/tests/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled_test.py index eb473d95b5..c9154249ba 100644 --- a/tests/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled_test.py +++ b/tests/providers/azure/services/storage/storage_infrastructure_encryption_is_enabled/storage_infrastructure_encryption_is_enabled_test.py @@ -45,6 +45,7 @@ class Test_storage_infrastructure_encryption_is_enabled: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -72,6 +73,7 @@ class Test_storage_infrastructure_encryption_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_infrastructure_encryption_enabled(self): storage_account_id = str(uuid4()) @@ -90,6 +92,7 @@ class Test_storage_infrastructure_encryption_is_enabled: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -117,3 +120,4 @@ class Test_storage_infrastructure_encryption_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days_test.py b/tests/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days_test.py index 8dd6775c74..5a036bf90d 100644 --- a/tests/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days_test.py +++ b/tests/providers/azure/services/storage/storage_key_rotation_90_days/storage_key_rotation_90_days_test.py @@ -46,6 +46,7 @@ class Test_storage_key_rotation_90_dayss: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=expiration_days, + location="westeurope", private_endpoint_connections=None, ) ] @@ -73,6 +74,7 @@ class Test_storage_key_rotation_90_dayss: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_key_rotation_90_days(self): storage_account_id = str(uuid4()) @@ -92,6 +94,7 @@ class Test_storage_key_rotation_90_dayss: encryption_type="None", minimum_tls_version="TLS1_2", key_expiration_period_in_days=expiration_days, + location="westeurope", private_endpoint_connections=None, ) ] @@ -119,6 +122,7 @@ class Test_storage_key_rotation_90_dayss: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_no_key_rotation(self): storage_account_id = str(uuid4()) @@ -137,6 +141,7 @@ class Test_storage_key_rotation_90_dayss: encryption_type="None", minimum_tls_version="TLS1_2", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -164,3 +169,4 @@ class Test_storage_key_rotation_90_dayss: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled_test.py b/tests/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled_test.py index 90fb2f061a..75f437b319 100644 --- a/tests/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled_test.py +++ b/tests/providers/azure/services/storage/storage_secure_transfer_required_is_enabled/storage_secure_transfer_required_is_enabled_test.py @@ -45,6 +45,7 @@ class Test_storage_secure_transfer_required_is_enabled: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -72,6 +73,7 @@ class Test_storage_secure_transfer_required_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" def test_storage_storage_accounts_secure_transfer_required_enabled(self): storage_account_id = str(uuid4()) @@ -90,6 +92,7 @@ class Test_storage_secure_transfer_required_is_enabled: encryption_type="None", minimum_tls_version="TLS1_1", key_expiration_period_in_days=None, + location="westeurope", private_endpoint_connections=None, ) ] @@ -117,3 +120,4 @@ class Test_storage_secure_transfer_required_is_enabled: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == storage_account_name assert result[0].resource_id == storage_account_id + assert result[0].location == "westeurope" diff --git a/tests/providers/azure/services/storage/storage_service_test.py b/tests/providers/azure/services/storage/storage_service_test.py index ed7d4ba113..7fea4e4009 100644 --- a/tests/providers/azure/services/storage/storage_service_test.py +++ b/tests/providers/azure/services/storage/storage_service_test.py @@ -33,6 +33,7 @@ def mock_storage_get_storage_accounts(_): minimum_tls_version=None, key_expiration_period_in_days=None, private_endpoint_connections=None, + location="westeurope", blob_properties=blob_properties, ) ] @@ -81,6 +82,9 @@ class Test_Storage_Service: assert ( storage.storage_accounts[AZURE_SUBSCRIPTION_ID][0].encryption_type == "None" ) + assert ( + storage.storage_accounts[AZURE_SUBSCRIPTION_ID][0].location == "westeurope" + ) assert ( storage.storage_accounts[AZURE_SUBSCRIPTION_ID][0].minimum_tls_version is None diff --git a/tests/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk_test.py b/tests/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk_test.py index 2bdbe526df..85b8b3cc1d 100644 --- a/tests/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk_test.py +++ b/tests/providers/azure/services/vm/vm_ensure_attached_disks_encrypted_with_cmk/vm_ensure_attached_disks_encrypted_with_cmk_test.py @@ -58,6 +58,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: resource_name="test-disk", vms_attached=[uuid4()], encryption_type="EncryptionAtRestWithPlatformKey", + location="location", ) } } @@ -80,6 +81,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: assert result[0].status == "FAIL" assert result[0].resource_id == resource_id assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id}' is not encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -96,6 +98,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: resource_name="test-disk", vms_attached=[uuid4()], encryption_type="EncryptionAtRestWithCustomerKey", + location="location", ) } } @@ -118,6 +121,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: assert result[0].status == "PASS" assert result[0].resource_id == resource_id assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id}' is encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -136,12 +140,14 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: resource_name="test-disk", vms_attached=[uuid4()], encryption_type="EncryptionAtRestWithPlatformKey", + location="location", ), disk_id_2: Disk( resource_id=resource_id_2, resource_name="test-disk-2", vms_attached=[uuid4(), uuid4()], encryption_type="EncryptionAtRestWithCustomerKey", + location="location2", ), } } @@ -164,6 +170,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: assert result[0].status == "FAIL" assert result[0].resource_id == resource_id_1 assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id_1}' is not encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -171,6 +178,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: assert result[1].status == "PASS" assert result[1].resource_id == resource_id_2 assert result[1].resource_name == "test-disk-2" + assert result[1].location == "location2" assert ( result[1].status_extended == f"Disk '{disk_id_2}' is encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -186,6 +194,7 @@ class Test_vm_ensure_attached_disks_encrypted_with_cmk: resource_id=resource_id, resource_name="test-disk", vms_attached=[], + location="location", encryption_type="EncryptionAtRestWithCustomerKey", ) } diff --git a/tests/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk_test.py b/tests/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk_test.py index 8022d0dee5..daf61781ad 100644 --- a/tests/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk_test.py +++ b/tests/providers/azure/services/vm/vm_ensure_unattached_disks_encrypted_with_cmk/vm_ensure_unattached_disks_encrypted_with_cmk_test.py @@ -58,6 +58,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: resource_name="test-disk", vms_attached=[], encryption_type="EncryptionAtRestWithPlatformKey", + location="location", ) } } @@ -80,6 +81,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: assert result[0].status == "FAIL" assert result[0].resource_id == resource_id assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id}' is not encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -96,6 +98,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: resource_name="test-disk", vms_attached=[], encryption_type="EncryptionAtRestWithCustomerKey", + location="location", ) } } @@ -118,6 +121,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: assert result[0].status == "PASS" assert result[0].resource_id == resource_id assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id}' is encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -135,12 +139,14 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: resource_id=resource_id_1, resource_name="test-disk", vms_attached=[], + location="location", encryption_type="EncryptionAtRestWithPlatformKey", ), disk_id_2: Disk( resource_id=resource_id_2, resource_name="test-disk-2", vms_attached=[], + location="location2", encryption_type="EncryptionAtRestWithCustomerKey", ), } @@ -164,6 +170,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: assert result[0].status == "FAIL" assert result[0].resource_id == resource_id_1 assert result[0].resource_name == "test-disk" + assert result[0].location == "location" assert ( result[0].status_extended == f"Disk '{disk_id_1}' is not encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -171,6 +178,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: assert result[1].status == "PASS" assert result[1].resource_id == resource_id_2 assert result[1].resource_name == "test-disk-2" + assert result[1].location == "location2" assert ( result[1].status_extended == f"Disk '{disk_id_2}' is encrypted with a customer-managed key in subscription {AZURE_SUBSCRIPTION_ID}." @@ -185,6 +193,7 @@ class Test_vm_ensure_unattached_disks_encrypted_with_cmk: disk_id: Disk( resource_id=resource_id, resource_name="test-disk", + location="location", vms_attached=[uuid4()], encryption_type="EncryptionAtRestWithCustomerKey", ) diff --git a/tests/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks_test.py b/tests/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks_test.py index cdad2bc129..f16d792525 100644 --- a/tests/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks_test.py +++ b/tests/providers/azure/services/vm/vm_ensure_using_managed_disks/vm_ensure_using_managed_disks_test.py @@ -55,6 +55,7 @@ class Test_vm_ensure_using_managed_disks: vm_id: VirtualMachine( resource_id="/subscriptions/resource_id", resource_name="VMTest", + location="location", storage_profile=mock.MagicMock( os_disk=mock.MagicMock( create_option="FromImage", @@ -83,6 +84,7 @@ class Test_vm_ensure_using_managed_disks: assert result[0].status == "PASS" assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "VMTest" + assert result[0].location == "location" assert result[0].resource_id == vm_id assert ( result[0].status_extended @@ -97,6 +99,7 @@ class Test_vm_ensure_using_managed_disks: vm_id: VirtualMachine( resource_id="/subscriptions/resource_id", resource_name="VMTest", + location="location", storage_profile=mock.MagicMock( os_disk=mock.MagicMock( create_option="FromImage", @@ -126,6 +129,7 @@ class Test_vm_ensure_using_managed_disks: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "VMTest" assert result[0].resource_id == vm_id + assert result[0].location == "location" assert ( result[0].status_extended == f"VM VMTest is not using managed disks in subscription {AZURE_SUBSCRIPTION_ID}" @@ -139,6 +143,7 @@ class Test_vm_ensure_using_managed_disks: vm_id: VirtualMachine( resource_id="/subscriptions/resource_id", resource_name="VMTest", + location="location", storage_profile=mock.MagicMock( os_disk=mock.MagicMock( create_option="FromImage", @@ -168,6 +173,7 @@ class Test_vm_ensure_using_managed_disks: assert result[0].subscription == AZURE_SUBSCRIPTION_ID assert result[0].resource_name == "VMTest" assert result[0].resource_id == vm_id + assert result[0].location == "location" assert ( result[0].status_extended == f"VM VMTest is not using managed disks in subscription {AZURE_SUBSCRIPTION_ID}" diff --git a/tests/providers/azure/services/vm/vm_service_test.py b/tests/providers/azure/services/vm/vm_service_test.py index dff745ed0e..b8689d67b8 100644 --- a/tests/providers/azure/services/vm/vm_service_test.py +++ b/tests/providers/azure/services/vm/vm_service_test.py @@ -19,6 +19,7 @@ def mock_vm_get_virtual_machines(_): "vm_id-1": VirtualMachine( resource_id="/subscriptions/resource_id", resource_name="VMTest", + location="location", storage_profile=StorageProfile( os_disk=OSDisk( create_option="FromImage", @@ -36,6 +37,7 @@ def mock_vm_get_disks(_): AZURE_SUBSCRIPTION_ID: { "disk_id-1": Disk( resource_id="disk_id-1", + location="location", resource_name="DiskTest", vms_attached=["managed_by"], encryption_type="EncryptionAtRestWithPlatformKey", @@ -67,6 +69,9 @@ class Test_AppInsights_Service: def test__get_virtual_machines(self): virtual_machines = VirtualMachines(set_mocked_azure_provider()) assert len(virtual_machines.virtual_machines) == 1 + assert (virtual_machines.virtual_machines[AZURE_SUBSCRIPTION_ID])[ + "vm_id-1" + ].location == "location" assert ( virtual_machines.virtual_machines[AZURE_SUBSCRIPTION_ID][ "vm_id-1" @@ -99,6 +104,7 @@ class Test_AppInsights_Service: assert len(disks) == 1 assert disks[AZURE_SUBSCRIPTION_ID]["disk_id-1"].resource_id == "disk_id-1" assert disks[AZURE_SUBSCRIPTION_ID]["disk_id-1"].resource_name == "DiskTest" + assert disks[AZURE_SUBSCRIPTION_ID]["disk_id-1"].location == "location" assert disks[AZURE_SUBSCRIPTION_ID]["disk_id-1"].vms_attached == ["managed_by"] assert ( disks[AZURE_SUBSCRIPTION_ID]["disk_id-1"].encryption_type