// Get user id for docs site users. protected string TryGetUserId() { if (User.Identity != null && User.Identity.IsAuthenticated) { var docsUserIdClaim = User.Claims.FirstOrDefault(x => x.Type == AuthenticationConstants.DocsUserId); if (docsUserIdClaim != null) { var userId = ClaimHelper.ExtractUserIdFromClaim(docsUserIdClaim.Value); if (!string.IsNullOrEmpty(userId)) { return(userId); } } } return(null); }
public void Process(ITelemetry item) { if (item is RequestTelemetry requestTelemetry) { var httpContext = _httpContextAccessor.HttpContext; if (httpContext.User?.Claims?.Count() > 0) { var docsUserIdClaim = httpContext.User.Claims.FirstOrDefault(x => x.Type == AuthenticationConstants.DocsUserId); if (docsUserIdClaim != null) { var userId = ClaimHelper.ExtractUserIdFromClaim(docsUserIdClaim.Value); requestTelemetry.Context.User.Id = userId; requestTelemetry.Context.User.AuthenticatedUserId = userId; } } } Next.Process(item); }