From 836b4ba2cc4b59f1bc524407c9f32811f46f25da Mon Sep 17 00:00:00 2001 From: Sergio Garcia <38561120+sergargar@users.noreply.github.com> Date: Mon, 24 Jun 2024 03:38:26 -0400 Subject: [PATCH] fix(rds): handle not existing endpoint (#4285) --- prowler/providers/aws/services/rds/rds_service.py | 8 ++++---- .../rds_instance_certificate_expiration_test.py | 9 +++++++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/prowler/providers/aws/services/rds/rds_service.py b/prowler/providers/aws/services/rds/rds_service.py index 469a3f19db..29bd4b6107 100644 --- a/prowler/providers/aws/services/rds/rds_service.py +++ b/prowler/providers/aws/services/rds/rds_service.py @@ -57,7 +57,7 @@ class RDS(AWSService): DBInstance( id=instance["DBInstanceIdentifier"], arn=arn, - endpoint=instance.get("Endpoint"), + endpoint=instance.get("Endpoint", {}), engine=instance["Engine"], engine_version=instance["EngineVersion"], status=instance["DBInstanceStatus"], @@ -226,7 +226,7 @@ class RDS(AWSService): db_cluster = DBCluster( id=cluster["DBClusterIdentifier"], arn=db_cluster_arn, - endpoint=cluster.get("Endpoint"), + endpoint=cluster.get("Endpoint", ""), engine=cluster["Engine"], status=cluster["Status"], public=cluster.get("PubliclyAccessible", False), @@ -475,7 +475,7 @@ class DBInstance(BaseModel): id: str # arn:{partition}:rds:{region}:{account}:db:{resource_id} arn: str - endpoint: Optional[dict] + endpoint: dict engine: str engine_version: str status: str @@ -504,7 +504,7 @@ class DBInstance(BaseModel): class DBCluster(BaseModel): id: str arn: str - endpoint: Optional[str] + endpoint: str engine: str status: str public: bool diff --git a/tests/providers/aws/services/rds/rds_instance_certificate_expiration/rds_instance_certificate_expiration_test.py b/tests/providers/aws/services/rds/rds_instance_certificate_expiration/rds_instance_certificate_expiration_test.py index 48dfc37884..fca2a469ad 100644 --- a/tests/providers/aws/services/rds/rds_instance_certificate_expiration/rds_instance_certificate_expiration_test.py +++ b/tests/providers/aws/services/rds/rds_instance_certificate_expiration/rds_instance_certificate_expiration_test.py @@ -80,6 +80,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -151,6 +152,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -221,6 +223,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -291,6 +294,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -361,6 +365,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -431,6 +436,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -501,6 +507,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -571,6 +578,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1", @@ -641,6 +649,7 @@ class Test_rds_instance_certificate_expiration: iam_auth=False, region=AWS_REGION, ca_cert="rds-ca-rsa2048-g1", + endpoint={}, cert=[ Certificate( id="rds-ca-rsa2048-g1",