diff --git a/prowler/lib/cli/parser.py b/prowler/lib/cli/parser.py index 9b954896..d4630a72 100644 --- a/prowler/lib/cli/parser.py +++ b/prowler/lib/cli/parser.py @@ -379,6 +379,16 @@ Detailed documentation at https://docs.prowler.cloud help="Scan only resources with specific AWS Resource ARNs, e.g., arn:aws:iam::012345678910:user/test arn:aws:ec2:us-east-1:123456789012:vpc/vpc-12345678", ) + # Boto3 Config + boto3_config_subparser = aws_parser.add_argument_group("Boto3 Config") + boto3_config_subparser.add_argument( + "--aws-retries-max-attempts", + nargs="?", + default=None, + type=int, + help="Set the maximum attemps for the Boto3 standard retrier config (Default: 3)", + ) + def __init_azure_parser__(self): """Init the Azure Provider CLI parser""" azure_parser = self.subparsers.add_parser( diff --git a/prowler/providers/aws/aws_provider.py b/prowler/providers/aws/aws_provider.py index 581ad82d..11126a98 100644 --- a/prowler/providers/aws/aws_provider.py +++ b/prowler/providers/aws/aws_provider.py @@ -130,7 +130,7 @@ def generate_regional_clients( regions = regions[:1] for region in regions: regional_client = audit_info.audit_session.client( - service, region_name=region + service, region_name=region, config=audit_info.session_config ) regional_client.region = region regional_clients[region] = regional_client diff --git a/prowler/providers/aws/lib/audit_info/audit_info.py b/prowler/providers/aws/lib/audit_info/audit_info.py index 62d08650..cd16b2eb 100644 --- a/prowler/providers/aws/lib/audit_info/audit_info.py +++ b/prowler/providers/aws/lib/audit_info/audit_info.py @@ -1,4 +1,5 @@ from boto3 import session +from botocore.config import Config from prowler.providers.aws.lib.audit_info.models import AWS_Assume_Role, AWS_Audit_Info @@ -9,6 +10,9 @@ current_audit_info = AWS_Audit_Info( profile_name=None, botocore_session=None, ), + # Default standard retrier config + # https://boto3.amazonaws.com/v1/documentation/api/latest/guide/retries.html + session_config=Config(retries={"max_attempts": 3, "mode": "standard"}), audited_account=None, audited_user_id=None, audited_partition=None, diff --git a/prowler/providers/aws/lib/audit_info/models.py b/prowler/providers/aws/lib/audit_info/models.py index 686c920c..96a26dc0 100644 --- a/prowler/providers/aws/lib/audit_info/models.py +++ b/prowler/providers/aws/lib/audit_info/models.py @@ -3,6 +3,7 @@ from datetime import datetime from typing import Any, Optional from boto3 import session +from botocore.config import Config @dataclass @@ -33,6 +34,8 @@ class AWS_Organizations_Info: class AWS_Audit_Info: original_session: session.Session audit_session: session.Session + # https://boto3.amazonaws.com/v1/documentation/api/latest/guide/retries.html + session_config: Config audited_account: int audited_identity_arn: str audited_user_id: str diff --git a/prowler/providers/common/audit_info.py b/prowler/providers/common/audit_info.py index 7f318b48..3e2a66f6 100644 --- a/prowler/providers/common/audit_info.py +++ b/prowler/providers/common/audit_info.py @@ -2,6 +2,7 @@ import sys from arnparse import arnparse from boto3 import client, session +from botocore.config import Config from colorama import Fore, Style from prowler.lib.logger import logger @@ -123,6 +124,20 @@ Caller Identity ARN: {Fore.YELLOW}[{audit_info.audited_identity_arn}]{Style.RESE # Assumed AWS session assumed_session = None + # Set the maximum retries for the standard retrier config + aws_retries_max_attempts = arguments.get("aws_retries_max_attempts") + if aws_retries_max_attempts: + # Create the new config + config = Config( + retries={ + "max_attempts": aws_retries_max_attempts, + "mode": "standard", + } + ) + # Merge the new configuration + new_boto3_config = current_audit_info.session_config.merge(config) + current_audit_info.session_config = new_boto3_config + # Setting session current_audit_info.profile = input_profile current_audit_info.audited_regions = input_regions diff --git a/tests/lib/cli/parser_test.py b/tests/lib/cli/parser_test.py index 02ce398d..1dc1c599 100644 --- a/tests/lib/cli/parser_test.py +++ b/tests/lib/cli/parser_test.py @@ -834,6 +834,13 @@ class Test_Parser: self.parser.parse(command) assert ex.type == SystemExit + def test_aws_parser_aws_retries_max_attempts(self): + argument = "--aws-retries-max-attempts" + max_retries = "10" + command = [prowler_command, argument, max_retries] + parsed = self.parser.parse(command) + assert parsed.aws_retries_max_attempts == int(max_retries) + def test_parser_azure_auth_sp(self): argument = "--sp-env-auth" command = [prowler_command, "azure", argument] diff --git a/tests/lib/outputs/outputs_test.py b/tests/lib/outputs/outputs_test.py index b7f52760..f6e391da 100644 --- a/tests/lib/outputs/outputs_test.py +++ b/tests/lib/outputs/outputs_test.py @@ -68,6 +68,7 @@ class Test_Outputs: audited_account = AWS_ACCOUNT_ID output_directory = f"{os.path.dirname(os.path.realpath(__file__))}" audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=None, audited_account=AWS_ACCOUNT_ID, @@ -202,6 +203,7 @@ class Test_Outputs: # def test_fill_json(self): # input_audit_info = AWS_Audit_Info( + session_config = (None,) # original_session=None, # audit_session=None, # audited_account=AWS_ACCOUNT_ID, @@ -246,6 +248,7 @@ class Test_Outputs: def test_fill_json_asff(self): input_audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=None, audited_account=AWS_ACCOUNT_ID, @@ -316,6 +319,7 @@ class Test_Outputs: ) # Create mock audit_info input_audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=AWS_ACCOUNT_ID, @@ -364,6 +368,7 @@ class Test_Outputs: ) # Create mock audit_info input_audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=AWS_ACCOUNT_ID, @@ -470,6 +475,7 @@ class Test_Outputs: region_name="eu-west-1", ) input_audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=AWS_ACCOUNT_ID, diff --git a/tests/providers/aws/aws_provider_test.py b/tests/providers/aws/aws_provider_test.py index 754c4bf4..e443f5cf 100644 --- a/tests/providers/aws/aws_provider_test.py +++ b/tests/providers/aws/aws_provider_test.py @@ -40,6 +40,7 @@ class Test_AWS_Provider: # Fulfil the input session object for Prowler audit_info = AWS_Audit_Info( + session_config=None, original_session=session, audit_session=None, audited_account=None, @@ -98,6 +99,7 @@ class Test_AWS_Provider: audited_regions = ["eu-west-1", "us-east-1"] # Fulfil the input session object for Prowler audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=None, @@ -127,6 +129,7 @@ class Test_AWS_Provider: profile_region = "us-east-1" # Fulfil the input session object for Prowler audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=None, @@ -155,6 +158,7 @@ class Test_AWS_Provider: audited_regions = ["cn-northwest-1", "cn-north-1"] # Fulfil the input session object for Prowler audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session, audited_account=None, diff --git a/tests/providers/aws/lib/allowlist/allowlist_test.py b/tests/providers/aws/lib/allowlist/allowlist_test.py index 698e92ff..184c1df2 100644 --- a/tests/providers/aws/lib/allowlist/allowlist_test.py +++ b/tests/providers/aws/lib/allowlist/allowlist_test.py @@ -17,6 +17,7 @@ class Test_Allowlist: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/acm/acm_service_test.py b/tests/providers/aws/services/acm/acm_service_test.py index 1e274c4c..6232ec9e 100644 --- a/tests/providers/aws/services/acm/acm_service_test.py +++ b/tests/providers/aws/services/acm/acm_service_test.py @@ -12,6 +12,7 @@ class Test_ACM_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/apigateway/apigateway_service_test.py b/tests/providers/aws/services/apigateway/apigateway_service_test.py index 1041c146..f82e3b45 100644 --- a/tests/providers/aws/services/apigateway/apigateway_service_test.py +++ b/tests/providers/aws/services/apigateway/apigateway_service_test.py @@ -12,6 +12,7 @@ class Test_APIGateway_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/apigatewayv2/apigatewayv2_service_test.py b/tests/providers/aws/services/apigatewayv2/apigatewayv2_service_test.py index 12f7e632..30c5afa6 100644 --- a/tests/providers/aws/services/apigatewayv2/apigatewayv2_service_test.py +++ b/tests/providers/aws/services/apigatewayv2/apigatewayv2_service_test.py @@ -43,6 +43,7 @@ class Test_ApiGatewayV2_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/autoscaling/autoscaling_service_test.py b/tests/providers/aws/services/autoscaling/autoscaling_service_test.py index 230d2494..49b6fb24 100644 --- a/tests/providers/aws/services/autoscaling/autoscaling_service_test.py +++ b/tests/providers/aws/services/autoscaling/autoscaling_service_test.py @@ -14,6 +14,7 @@ class Test_AutoScaling_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/awslambda/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled_test.py b/tests/providers/aws/services/awslambda/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled_test.py index 96578dfd..541e3749 100644 --- a/tests/providers/aws/services/awslambda/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled_test.py +++ b/tests/providers/aws/services/awslambda/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled/awslambda_function_invoke_api_operations_cloudtrail_logging_enabled_test.py @@ -27,6 +27,7 @@ class Test_awslambda_function_invoke_api_operations_cloudtrail_logging_enabled: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/awslambda/awslambda_service_test.py b/tests/providers/aws/services/awslambda/awslambda_service_test.py index 77be8841..49889d78 100644 --- a/tests/providers/aws/services/awslambda/awslambda_service_test.py +++ b/tests/providers/aws/services/awslambda/awslambda_service_test.py @@ -59,6 +59,7 @@ def mock_generate_regional_clients(service, audit_info): class Test_Lambda_Service: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudformation/cloudformation_service_test.py b/tests/providers/aws/services/cloudformation/cloudformation_service_test.py index 0ac75394..f5ae21ef 100644 --- a/tests/providers/aws/services/cloudformation/cloudformation_service_test.py +++ b/tests/providers/aws/services/cloudformation/cloudformation_service_test.py @@ -136,6 +136,7 @@ class Test_CloudFormation_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudfront/cloudfront_service_test.py b/tests/providers/aws/services/cloudfront/cloudfront_service_test.py index 2a0bec63..f1ec5fb1 100644 --- a/tests/providers/aws/services/cloudfront/cloudfront_service_test.py +++ b/tests/providers/aws/services/cloudfront/cloudfront_service_test.py @@ -145,6 +145,7 @@ class Test_CloudFront_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudtrail/cloudtrail_multi_region_enabled/cloudtrail_multi_region_enabled_test.py b/tests/providers/aws/services/cloudtrail/cloudtrail_multi_region_enabled/cloudtrail_multi_region_enabled_test.py index ca6dfe27..29d92893 100644 --- a/tests/providers/aws/services/cloudtrail/cloudtrail_multi_region_enabled/cloudtrail_multi_region_enabled_test.py +++ b/tests/providers/aws/services/cloudtrail/cloudtrail_multi_region_enabled/cloudtrail_multi_region_enabled_test.py @@ -12,6 +12,7 @@ AWS_ACCOUNT_NUMBER = 123456789012 class Test_cloudtrail_multi_region_enabled: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_read_enabled/cloudtrail_s3_dataevents_read_enabled_test.py b/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_read_enabled/cloudtrail_s3_dataevents_read_enabled_test.py index fd382901..6f5bf179 100644 --- a/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_read_enabled/cloudtrail_s3_dataevents_read_enabled_test.py +++ b/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_read_enabled/cloudtrail_s3_dataevents_read_enabled_test.py @@ -12,6 +12,7 @@ AWS_ACCOUNT_NUMBER = 123456789012 class Test_cloudtrail_s3_dataevents_read_enabled: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_write_enabled/cloudtrail_s3_dataevents_write_enabled_test.py b/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_write_enabled/cloudtrail_s3_dataevents_write_enabled_test.py index b54dcb01..ebf717fa 100644 --- a/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_write_enabled/cloudtrail_s3_dataevents_write_enabled_test.py +++ b/tests/providers/aws/services/cloudtrail/cloudtrail_s3_dataevents_write_enabled/cloudtrail_s3_dataevents_write_enabled_test.py @@ -12,6 +12,7 @@ AWS_ACCOUNT_NUMBER = 123456789012 class Test_cloudtrail_s3_dataevents_write_enabled: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudtrail/cloudtrail_service_test.py b/tests/providers/aws/services/cloudtrail/cloudtrail_service_test.py index 2cee4286..f7fe02cd 100644 --- a/tests/providers/aws/services/cloudtrail/cloudtrail_service_test.py +++ b/tests/providers/aws/services/cloudtrail/cloudtrail_service_test.py @@ -11,6 +11,7 @@ class Test_Cloudtrail_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/cloudwatch/cloudwatch_service_test.py b/tests/providers/aws/services/cloudwatch/cloudwatch_service_test.py index d9b568c9..b9feeab6 100644 --- a/tests/providers/aws/services/cloudwatch/cloudwatch_service_test.py +++ b/tests/providers/aws/services/cloudwatch/cloudwatch_service_test.py @@ -12,6 +12,7 @@ class Test_CloudWatch_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/codebuild/codebuild_service_test.py b/tests/providers/aws/services/codebuild/codebuild_service_test.py index c07a7312..e00494d3 100644 --- a/tests/providers/aws/services/codebuild/codebuild_service_test.py +++ b/tests/providers/aws/services/codebuild/codebuild_service_test.py @@ -55,6 +55,7 @@ def mock_generate_regional_clients(service, audit_info): class Test_Codebuild_Service: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/config/config_service_test.py b/tests/providers/aws/services/config/config_service_test.py index 944389b8..ac8a7eb0 100644 --- a/tests/providers/aws/services/config/config_service_test.py +++ b/tests/providers/aws/services/config/config_service_test.py @@ -12,6 +12,7 @@ class Test_Config_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/dynamodb/dynamodb_service_test.py b/tests/providers/aws/services/dynamodb/dynamodb_service_test.py index b123e7d7..a1386b99 100644 --- a/tests/providers/aws/services/dynamodb/dynamodb_service_test.py +++ b/tests/providers/aws/services/dynamodb/dynamodb_service_test.py @@ -12,6 +12,7 @@ class Test_DynamoDB_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/ec2/ec2_service_test.py b/tests/providers/aws/services/ec2/ec2_service_test.py index 8fb73b8c..873fcac6 100644 --- a/tests/providers/aws/services/ec2/ec2_service_test.py +++ b/tests/providers/aws/services/ec2/ec2_service_test.py @@ -21,6 +21,7 @@ class Test_EC2_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/ecr/ecr_service_test.py b/tests/providers/aws/services/ecr/ecr_service_test.py index 91bbe1b6..68a61d68 100644 --- a/tests/providers/aws/services/ecr/ecr_service_test.py +++ b/tests/providers/aws/services/ecr/ecr_service_test.py @@ -72,6 +72,7 @@ class Test_ECR_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/ecs/ecs_service_test.py b/tests/providers/aws/services/ecs/ecs_service_test.py index 5bc8e695..0d7007cb 100644 --- a/tests/providers/aws/services/ecs/ecs_service_test.py +++ b/tests/providers/aws/services/ecs/ecs_service_test.py @@ -24,6 +24,7 @@ class Test_ECS_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/efs/efs_service_test.py b/tests/providers/aws/services/efs/efs_service_test.py index 8bc98443..3a8dac98 100644 --- a/tests/providers/aws/services/efs/efs_service_test.py +++ b/tests/providers/aws/services/efs/efs_service_test.py @@ -56,6 +56,7 @@ def mock_generate_regional_clients(service, audit_info): class Test_EFS: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/eks/eks_service_test.py b/tests/providers/aws/services/eks/eks_service_test.py index 63ae9e76..cb674be5 100644 --- a/tests/providers/aws/services/eks/eks_service_test.py +++ b/tests/providers/aws/services/eks/eks_service_test.py @@ -29,6 +29,7 @@ class Test_EKS_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/elb/elb_service_test.py b/tests/providers/aws/services/elb/elb_service_test.py index dde05357..7e9b2442 100644 --- a/tests/providers/aws/services/elb/elb_service_test.py +++ b/tests/providers/aws/services/elb/elb_service_test.py @@ -12,6 +12,7 @@ class Test_ELB_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/elbv2/elbv2_service_test.py b/tests/providers/aws/services/elbv2/elbv2_service_test.py index dd2fcdb0..f4242c22 100644 --- a/tests/providers/aws/services/elbv2/elbv2_service_test.py +++ b/tests/providers/aws/services/elbv2/elbv2_service_test.py @@ -12,6 +12,7 @@ class Test_ELBv2_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/emr/emr_cluster_publicly_accesible/emr_cluster_publicly_accesible_test.py b/tests/providers/aws/services/emr/emr_cluster_publicly_accesible/emr_cluster_publicly_accesible_test.py index aa97a0e1..cbee0814 100644 --- a/tests/providers/aws/services/emr/emr_cluster_publicly_accesible/emr_cluster_publicly_accesible_test.py +++ b/tests/providers/aws/services/emr/emr_cluster_publicly_accesible/emr_cluster_publicly_accesible_test.py @@ -15,6 +15,7 @@ class Test_emr_cluster_publicly_accesible: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/emr/emr_service_test.py b/tests/providers/aws/services/emr/emr_service_test.py index 9e245d51..c1eebb2a 100644 --- a/tests/providers/aws/services/emr/emr_service_test.py +++ b/tests/providers/aws/services/emr/emr_service_test.py @@ -51,6 +51,7 @@ def mock_generate_regional_clients(service, audit_info): class Test_EMR_Service: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/globalaccelerator/globalaccelerator_service_test.py b/tests/providers/aws/services/globalaccelerator/globalaccelerator_service_test.py index 3f05fc9d..b6f105e6 100644 --- a/tests/providers/aws/services/globalaccelerator/globalaccelerator_service_test.py +++ b/tests/providers/aws/services/globalaccelerator/globalaccelerator_service_test.py @@ -50,6 +50,7 @@ class Test_GlobalAccelerator_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/glue/glue_service_test.py b/tests/providers/aws/services/glue/glue_service_test.py index aa58b10e..af314818 100644 --- a/tests/providers/aws/services/glue/glue_service_test.py +++ b/tests/providers/aws/services/glue/glue_service_test.py @@ -120,6 +120,7 @@ class Test_Glue_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/guardduty/guardduty_service_test.py b/tests/providers/aws/services/guardduty/guardduty_service_test.py index 49a87e8a..4dcf2037 100644 --- a/tests/providers/aws/services/guardduty/guardduty_service_test.py +++ b/tests/providers/aws/services/guardduty/guardduty_service_test.py @@ -34,6 +34,7 @@ class Test_GuardDuty_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/iam/iam_service_test.py b/tests/providers/aws/services/iam/iam_service_test.py index ad4ad633..85287e66 100644 --- a/tests/providers/aws/services/iam/iam_service_test.py +++ b/tests/providers/aws/services/iam/iam_service_test.py @@ -15,6 +15,7 @@ class Test_IAM_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/kms/kms_service_test.py b/tests/providers/aws/services/kms/kms_service_test.py index a9aa7841..e6796c49 100644 --- a/tests/providers/aws/services/kms/kms_service_test.py +++ b/tests/providers/aws/services/kms/kms_service_test.py @@ -14,6 +14,7 @@ class Test_ACM_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/opensearch/opensearch_service_test.py b/tests/providers/aws/services/opensearch/opensearch_service_test.py index b3f06b0a..c9c39c5e 100644 --- a/tests/providers/aws/services/opensearch/opensearch_service_test.py +++ b/tests/providers/aws/services/opensearch/opensearch_service_test.py @@ -100,6 +100,7 @@ class Test_OpenSearchService_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/rds/rds_service_test.py b/tests/providers/aws/services/rds/rds_service_test.py index bcbf1106..3bfd24f2 100644 --- a/tests/providers/aws/services/rds/rds_service_test.py +++ b/tests/providers/aws/services/rds/rds_service_test.py @@ -12,6 +12,7 @@ class Test_RDS_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/redshift/redshift_service_test.py b/tests/providers/aws/services/redshift/redshift_service_test.py index 1b4f1cf5..fca6c5f3 100644 --- a/tests/providers/aws/services/redshift/redshift_service_test.py +++ b/tests/providers/aws/services/redshift/redshift_service_test.py @@ -60,6 +60,7 @@ class Test_Redshift_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/route53/route53_service_test.py b/tests/providers/aws/services/route53/route53_service_test.py index 6d913cc8..2d869c31 100644 --- a/tests/providers/aws/services/route53/route53_service_test.py +++ b/tests/providers/aws/services/route53/route53_service_test.py @@ -28,6 +28,7 @@ class Test_Route53_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/route53/route53domains_service_test.py b/tests/providers/aws/services/route53/route53domains_service_test.py index a63dac52..25e72ab1 100644 --- a/tests/providers/aws/services/route53/route53domains_service_test.py +++ b/tests/providers/aws/services/route53/route53domains_service_test.py @@ -67,6 +67,7 @@ class Test_Route53_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/s3/s3_account_level_public_access_blocks/s3_account_level_public_access_blocks_test.py b/tests/providers/aws/services/s3/s3_account_level_public_access_blocks/s3_account_level_public_access_blocks_test.py index 8b997fc4..ee83f778 100644 --- a/tests/providers/aws/services/s3/s3_account_level_public_access_blocks/s3_account_level_public_access_blocks_test.py +++ b/tests/providers/aws/services/s3/s3_account_level_public_access_blocks/s3_account_level_public_access_blocks_test.py @@ -13,6 +13,7 @@ class Test_s3_account_level_public_access_blocks: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/s3/s3_bucket_public_access/s3_bucket_public_access_test.py b/tests/providers/aws/services/s3/s3_bucket_public_access/s3_bucket_public_access_test.py index 7f0fab84..5865ea3a 100644 --- a/tests/providers/aws/services/s3/s3_bucket_public_access/s3_bucket_public_access_test.py +++ b/tests/providers/aws/services/s3/s3_bucket_public_access/s3_bucket_public_access_test.py @@ -14,6 +14,7 @@ class Test_s3_bucket_public_access: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/s3/s3_service_test.py b/tests/providers/aws/services/s3/s3_service_test.py index 8f9d0d72..c4f7e9fb 100644 --- a/tests/providers/aws/services/s3/s3_service_test.py +++ b/tests/providers/aws/services/s3/s3_service_test.py @@ -14,6 +14,7 @@ class Test_S3_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/sagemaker/sagemaker_service_test.py b/tests/providers/aws/services/sagemaker/sagemaker_service_test.py index 94a922f0..21afcdf5 100644 --- a/tests/providers/aws/services/sagemaker/sagemaker_service_test.py +++ b/tests/providers/aws/services/sagemaker/sagemaker_service_test.py @@ -101,6 +101,7 @@ class Test_SageMaker_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/secretsmanager/secretsmanager_service_test.py b/tests/providers/aws/services/secretsmanager/secretsmanager_service_test.py index 6f89c538..10e510f4 100644 --- a/tests/providers/aws/services/secretsmanager/secretsmanager_service_test.py +++ b/tests/providers/aws/services/secretsmanager/secretsmanager_service_test.py @@ -30,6 +30,7 @@ def mock_generate_regional_clients(service, audit_info): class Test_SecretsManager_Service: def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/shield/shield_advanced_protection_in_associated_elastic_ips/shield_advanced_protection_in_associated_elastic_ips_test.py b/tests/providers/aws/services/shield/shield_advanced_protection_in_associated_elastic_ips/shield_advanced_protection_in_associated_elastic_ips_test.py index 37d1761f..b6538c5e 100644 --- a/tests/providers/aws/services/shield/shield_advanced_protection_in_associated_elastic_ips/shield_advanced_protection_in_associated_elastic_ips_test.py +++ b/tests/providers/aws/services/shield/shield_advanced_protection_in_associated_elastic_ips/shield_advanced_protection_in_associated_elastic_ips_test.py @@ -27,6 +27,7 @@ class Test_shield_advanced_protection_in_associated_elastic_ips: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/shield/shield_advanced_protection_in_classic_load_balancers/shield_advanced_protection_in_classic_load_balancers_test.py b/tests/providers/aws/services/shield/shield_advanced_protection_in_classic_load_balancers/shield_advanced_protection_in_classic_load_balancers_test.py index a7d69f47..f3328979 100644 --- a/tests/providers/aws/services/shield/shield_advanced_protection_in_classic_load_balancers/shield_advanced_protection_in_classic_load_balancers_test.py +++ b/tests/providers/aws/services/shield/shield_advanced_protection_in_classic_load_balancers/shield_advanced_protection_in_classic_load_balancers_test.py @@ -14,6 +14,7 @@ class Test_shield_advanced_protection_in_classic_load_balancers: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/shield/shield_advanced_protection_in_internet_facing_load_balancers/shield_advanced_protection_in_internet_facing_load_balancers_test.py b/tests/providers/aws/services/shield/shield_advanced_protection_in_internet_facing_load_balancers/shield_advanced_protection_in_internet_facing_load_balancers_test.py index 8f341d9a..e29c99fe 100644 --- a/tests/providers/aws/services/shield/shield_advanced_protection_in_internet_facing_load_balancers/shield_advanced_protection_in_internet_facing_load_balancers_test.py +++ b/tests/providers/aws/services/shield/shield_advanced_protection_in_internet_facing_load_balancers/shield_advanced_protection_in_internet_facing_load_balancers_test.py @@ -27,6 +27,7 @@ class Test_shield_advanced_protection_in_internet_facing_load_balancers: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/shield/shield_service_test.py b/tests/providers/aws/services/shield/shield_service_test.py index ab0266ee..b5775e64 100644 --- a/tests/providers/aws/services/shield/shield_service_test.py +++ b/tests/providers/aws/services/shield/shield_service_test.py @@ -37,6 +37,7 @@ class Test_Shield_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/sns/sns_service_test.py b/tests/providers/aws/services/sns/sns_service_test.py index e4d4a366..798967b1 100644 --- a/tests/providers/aws/services/sns/sns_service_test.py +++ b/tests/providers/aws/services/sns/sns_service_test.py @@ -51,6 +51,7 @@ class Test_SNS_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/sqs/sqs_service_test.py b/tests/providers/aws/services/sqs/sqs_service_test.py index c2c4836f..c89df125 100644 --- a/tests/providers/aws/services/sqs/sqs_service_test.py +++ b/tests/providers/aws/services/sqs/sqs_service_test.py @@ -53,6 +53,7 @@ class Test_SQS_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/ssm/ssm_service_test.py b/tests/providers/aws/services/ssm/ssm_service_test.py index 54ba4e90..0f23e10a 100644 --- a/tests/providers/aws/services/ssm/ssm_service_test.py +++ b/tests/providers/aws/services/ssm/ssm_service_test.py @@ -126,6 +126,7 @@ class Test_SSM_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/trustedadvisor/trustedadvisor_service_test.py b/tests/providers/aws/services/trustedadvisor/trustedadvisor_service_test.py index 985c4cd5..2d63c6e7 100644 --- a/tests/providers/aws/services/trustedadvisor/trustedadvisor_service_test.py +++ b/tests/providers/aws/services/trustedadvisor/trustedadvisor_service_test.py @@ -26,6 +26,7 @@ class Test_TrustedAdvisor_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/vpc/vpc_service_test.py b/tests/providers/aws/services/vpc/vpc_service_test.py index 35f4c30a..29498e7f 100644 --- a/tests/providers/aws/services/vpc/vpc_service_test.py +++ b/tests/providers/aws/services/vpc/vpc_service_test.py @@ -14,6 +14,7 @@ class Test_VPC_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/waf/waf_service_test.py b/tests/providers/aws/services/waf/waf_service_test.py index 13beb0d2..67213381 100644 --- a/tests/providers/aws/services/waf/waf_service_test.py +++ b/tests/providers/aws/services/waf/waf_service_test.py @@ -48,6 +48,7 @@ class Test_WAF_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/wafv2/wafv2_service_test.py b/tests/providers/aws/services/wafv2/wafv2_service_test.py index 8abfb798..f580b411 100644 --- a/tests/providers/aws/services/wafv2/wafv2_service_test.py +++ b/tests/providers/aws/services/wafv2/wafv2_service_test.py @@ -12,6 +12,7 @@ class Test_WAFv2_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/aws/services/workspaces/workspaces_service_test.py b/tests/providers/aws/services/workspaces/workspaces_service_test.py index c6cf8ead..bbf2d754 100644 --- a/tests/providers/aws/services/workspaces/workspaces_service_test.py +++ b/tests/providers/aws/services/workspaces/workspaces_service_test.py @@ -45,6 +45,7 @@ class Test_WorkSpaces_Service: # Mocked Audit Info def set_mocked_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None, diff --git a/tests/providers/common/audit_info_test.py b/tests/providers/common/audit_info_test.py index 788c0ffd..6a21be82 100644 --- a/tests/providers/common/audit_info_test.py +++ b/tests/providers/common/audit_info_test.py @@ -26,6 +26,7 @@ from prowler.providers.common.audit_info import ( EXAMPLE_AMI_ID = "ami-12c6146b" ACCOUNT_ID = 123456789012 mock_current_audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=None, audited_account="123456789012", diff --git a/tests/providers/common/common_outputs_test.py b/tests/providers/common/common_outputs_test.py index e3f9efbb..eb55b418 100644 --- a/tests/providers/common/common_outputs_test.py +++ b/tests/providers/common/common_outputs_test.py @@ -38,6 +38,7 @@ class Test_Common_Output_Options: # Mocked AWS Audit Info def set_mocked_aws_audit_info(self): audit_info = AWS_Audit_Info( + session_config=None, original_session=None, audit_session=session.Session( profile_name=None,