From 6338a02b75b4f9ec993197058487eb473b835d4d Mon Sep 17 00:00:00 2001 From: Rithika Narayan Date: Fri, 21 Nov 2025 13:22:39 -0500 Subject: [PATCH 1/4] use block config for block id --- datadog_lambda/asm.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/datadog_lambda/asm.py b/datadog_lambda/asm.py index 6c65a946..41cc951e 100644 --- a/datadog_lambda/asm.py +++ b/datadog_lambda/asm.py @@ -3,6 +3,7 @@ from copy import deepcopy from typing import Any, Dict, List, Optional, Union +from ddtrace.appsec._utils import Block_config from ddtrace.contrib.internal.trace_utils import _get_request_header_client_ip from ddtrace.internal import core from ddtrace.internal.utils import get_blocked @@ -223,7 +224,8 @@ def get_asm_blocked_response( content = "" else: content_type = blocked.get("content-type", "application/json") - content = http_utils._get_blocked_template(content_type) + blocked_config = Block_config() + content = http_utils._get_blocked_template(content_type, blocked_config.block_id) response = { "statusCode": blocked.get("status_code", 403), From c04c1e330cd8753e3543355cde655184c9d2b039 Mon Sep 17 00:00:00 2001 From: Rithika Narayan Date: Fri, 21 Nov 2025 13:37:22 -0500 Subject: [PATCH 2/4] linting --- datadog_lambda/asm.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/datadog_lambda/asm.py b/datadog_lambda/asm.py index 41cc951e..6e1a0480 100644 --- a/datadog_lambda/asm.py +++ b/datadog_lambda/asm.py @@ -225,7 +225,9 @@ def get_asm_blocked_response( else: content_type = blocked.get("content-type", "application/json") blocked_config = Block_config() - content = http_utils._get_blocked_template(content_type, blocked_config.block_id) + content = http_utils._get_blocked_template( + content_type, blocked_config.block_id + ) response = { "statusCode": blocked.get("status_code", 403), From 63d56554bed518f5662abcf8e448f33db72520d5 Mon Sep 17 00:00:00 2001 From: Rithika Narayan Date: Mon, 24 Nov 2025 09:48:17 -0500 Subject: [PATCH 3/4] Using existing block config --- datadog_lambda/asm.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/datadog_lambda/asm.py b/datadog_lambda/asm.py index 6e1a0480..29648021 100644 --- a/datadog_lambda/asm.py +++ b/datadog_lambda/asm.py @@ -3,7 +3,6 @@ from copy import deepcopy from typing import Any, Dict, List, Optional, Union -from ddtrace.appsec._utils import Block_config from ddtrace.contrib.internal.trace_utils import _get_request_header_client_ip from ddtrace.internal import core from ddtrace.internal.utils import get_blocked @@ -224,9 +223,8 @@ def get_asm_blocked_response( content = "" else: content_type = blocked.get("content-type", "application/json") - blocked_config = Block_config() content = http_utils._get_blocked_template( - content_type, blocked_config.block_id + content_type, blocked.get("block_id", "default") ) response = { From 63c443974f458b8d8fc86aaa74db0f96911c00b5 Mon Sep 17 00:00:00 2001 From: Rithika Narayan Date: Mon, 24 Nov 2025 16:48:42 -0500 Subject: [PATCH 4/4] Update dd-trace-py version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 2c59df99..9be5c846 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,7 +28,7 @@ classifiers = [ python = ">=3.8.0,<4" datadog = ">=0.51.0,<1.0.0" wrapt = "^1.11.2" -ddtrace = ">=3.16.2,<4" +ddtrace = ">=3.19.0,<4" ujson = ">=5.9.0" botocore = { version = "^1.34.0", optional = true } requests = { version ="^2.22.0", optional = true }