В какой момент пользователь получает файл cookie в httpcontext для запроса http? - PullRequest
0 голосов
/ 02 июля 2019

Я использую Identity Framework, чтобы попытаться извлечь утверждения пользователя из файла cookie.Это что-то, что делает Identity Framework автоматически, когда приходит запрос, или есть способ извлечь его вручную?

Когда я читаю взгляд на httpcontext, пользователь всегда равен нулю.Тем не менее, он должен иметь пользователя, которого я назначил ему.

Вот код, который я использую для назначения куки пользователю.Я также сбит с толку тем, что делает SignInAsync, поскольку после его вызова ничего не меняется.

var claims = new List<Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, authRequest.UserName),
                new Claim(ClaimTypes.Name, authRequest.UserName),
                new Claim(ClaimTypes.Email, "TestClaim@Test.com")
            };

            var claimsIdentity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme);

            var authProperties = new AuthenticationProperties
            {
                AllowRefresh = true,
                ExpiresUtc = DateTimeOffset.UtcNow.AddDays(1),
                IsPersistent = true,
                IssuedUtc = DateTimeOffset.UtcNow
            };

            await this._httpContextAccessor.HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(claimsIdentity), authProperties).ConfigureAwait(true);

Я ожидаю, что HttpContext.User не станет нулевым после вызова SignInAsync, и я ожидаю, что HttpContext.Userне может быть нулевым, когда приходит запрос с cookie.

...