From 60c60a7fc42bf67557e7750d8dd9afef9521af46 Mon Sep 17 00:00:00 2001 From: Lorien Date: Tue, 12 Jul 2022 17:58:43 -0400 Subject: [PATCH 1/2] fix if no methodresources --- lambdaguard/security/Public.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lambdaguard/security/Public.py b/lambdaguard/security/Public.py index e4632b2..2ff496f 100644 --- a/lambdaguard/security/Public.py +++ b/lambdaguard/security/Public.py @@ -20,7 +20,7 @@ def __init__(self, item): def audit(self): if self.item.arn.service == "apigateway": - if self.item.policy: + if self.item.policy or not self.item.resources: return apiKeyRequired = False From 2b62cb69735f1cd4ff965095828ce5353c63efbc Mon Sep 17 00:00:00 2001 From: Lorien Date: Wed, 13 Jul 2022 09:32:14 -0400 Subject: [PATCH 2/2] remove calls to aws if api management arn rather than execute-api arn --- lambdaguard/core/APIGateway.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lambdaguard/core/APIGateway.py b/lambdaguard/core/APIGateway.py index eae77fa..d1f6ff0 100644 --- a/lambdaguard/core/APIGateway.py +++ b/lambdaguard/core/APIGateway.py @@ -27,9 +27,11 @@ def __init__(self, arn, profile=None, access_key_id=None, secret_access_key=None self.stages = [] self.resources = [] - self.get_api() - - self.info = f"REST API ID: {self.rest_api_id}" + if self.arn.full.split(":")[2] == 'execute-api': + self.get_api() + self.info = f"REST API ID: {self.rest_api_id}" + else: + self.info = "API MANAGMENT ARN" def get_api(self): self.rest_api_id = self.arn.full.split(":")[-1].split("/")[0]