diff --git a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Core.cs b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Core.cs index 80e7b86621cc..6a6d7137e0ec 100644 --- a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Core.cs +++ b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Core.cs @@ -168,8 +168,16 @@ internal override bool IsBlocked internal override bool ReportedExternalWafsRequestHeaders { - get => Context.Items["ReportedExternalWafsRequestHeaders"] is true; - set => Context.Items["ReportedExternalWafsRequestHeaders"] = value; + get + { + if (Context.Items.TryGetValue(ReportedExternalWafsRequestHeaders, out var value)) + { + return value is bool boolValue && boolValue; + } + + return false; + } + set => Context.Items[ReportedExternalWafsRequestHeaders] = value; } internal override void MarkBlocked() => Context.Items[BlockingAction.BlockDefaultActionName] = true; diff --git a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Framework.cs b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Framework.cs index 288596dbf889..4dfc03766ce7 100644 --- a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Framework.cs +++ b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.Framework.cs @@ -536,8 +536,8 @@ public HttpTransport(HttpContext context) internal override bool ReportedExternalWafsRequestHeaders { - get => Context.Items["ReportedExternalWafsRequestHeaders"] is true; - set => Context.Items["ReportedExternalWafsRequestHeaders"] = value; + get => Context.Items[ReportedExternalWafsRequestHeaders] is true; + set => Context.Items[ReportedExternalWafsRequestHeaders] = value; } internal override void MarkBlocked() => Context.Items[BlockingAction.BlockDefaultActionName] = true; diff --git a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.cs b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.cs index d6b99284f91d..71c35cf8d362 100644 --- a/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.cs +++ b/tracer/src/Datadog.Trace/AppSec/Coordinator/SecurityCoordinator.cs @@ -27,6 +27,7 @@ namespace Datadog.Trace.AppSec.Coordinator; /// internal readonly partial struct SecurityCoordinator { + private const string ReportedExternalWafsRequestHeaders = "ReportedExternalWafsRequestHeaders"; private static readonly IDatadogLogger Log = DatadogLogging.GetLoggerFor(); private readonly Security _security; private readonly Span _localRootSpan;