// [Authorize] public async Task <UserObject> GetSessionAsync() { UserLayer userLayer = new UserLayer(); string userName = HttpContext.Current.User.Identity.Name; if (HttpContext.Current.Request.UrlReferrer != null && (HttpContext.Current.Request.UrlReferrer.Host.Contains("localhost") && HttpContext.Current.Request.UrlReferrer.Port == 51268)) { userName = "******"; // HttpContext.Current.User.Identity.Name; } else { userName = HttpContext.Current.User.Identity.Name; } string previousUser = null; try { previousUser = UserImpersonation.PrevUserName; } catch (Exception) { // ignored } var uo = await userLayer.GetSessionAsync(userName, previousUser); uo.PreviousUser = previousUser; return(uo); }