diff --git a/src/HotChocolate/AspNetCore/src/AspNetCore/DefaultSocketSessionInterceptor.cs b/src/HotChocolate/AspNetCore/src/AspNetCore/DefaultSocketSessionInterceptor.cs index c09b7091f3c..be905e7db94 100644 --- a/src/HotChocolate/AspNetCore/src/AspNetCore/DefaultSocketSessionInterceptor.cs +++ b/src/HotChocolate/AspNetCore/src/AspNetCore/DefaultSocketSessionInterceptor.cs @@ -21,13 +21,17 @@ public class DefaultSocketSessionInterceptor : ISocketSessionInterceptor CancellationToken cancellationToken = default) { var context = session.Connection.HttpContext; + var userState = new UserState(context.User); + requestBuilder.TrySetServices(session.Connection.RequestServices); requestBuilder.TryAddGlobalState(nameof(CancellationToken), session.Connection.RequestAborted); requestBuilder.TryAddGlobalState(nameof(HttpContext), context); - requestBuilder.TryAddGlobalState(nameof(ClaimsPrincipal), context.User); requestBuilder.TryAddGlobalState(nameof(ISocketSession), session); requestBuilder.TryAddGlobalState(OperationSessionId, operationSessionId); + requestBuilder.TryAddGlobalState(nameof(ClaimsPrincipal), userState.User); + requestBuilder.TryAddGlobalState(WellKnownContextData.UserState, userState); + if (context.IsTracingEnabled()) { requestBuilder.TryAddGlobalState(EnableTracing, true);