Die SigninaSync -Funktion findet Cookie nicht an den Client -Browser anC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Die SigninaSync -Funktion findet Cookie nicht an den Client -Browser an

Post by Anonymous »

Ich habe versucht, eine Cookie-basierte Authentifizierung für die Serverseite meiner Blazor Auto-Anwendung zu erstellen. Ab sofort gibt der Benutzer seine Details in eine Anmeldetabelle ein. Die Details werden dann an einen Controller gesendet, der dann einen Auth -Dienst verwendet, der Ansprüche erstellt und die Methode SigninAsync zum Erstellen des Cookies erstellt und dem Client angibt.

Code: Select all

public async Task Login(UserDto request)
{
bool loginStatus = await serverAuthService.LoginAsync(request);

if(loginStatus is false)
{
return BadRequest("Invalid");
}

return Ok("Login: " + loginStatus);
}
< /code>
Und die Servicemethode lautet: < /p>
public async Task LoginAsync(UserDto request)
{
var user = await context.Users.FirstOrDefaultAsync(u => u.Name == request.Name);

if (user is null)
{
return false;
}

var claims = new List
{
new Claim(ClaimTypes.Name, user.Name),
new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()),
new Claim(ClaimTypes.Role, user.Role)
};

var identity = new ClaimsIdentity(claims, "MyCookieAuth");
var principal = new ClaimsPrincipal(identity);
var authProperties = new AuthenticationProperties
{
IsPersistent = true,
};

await _httpContextAccessor.HttpContext!.SignInAsync(
"MyCookieAuth",
principal,
authProperties);

return true;
}
mein Programm.cs Datei enthält hier angegebene Cookie -Richtlinien:
// Add authentication services with cookie scheme
builder.Services.AddAuthentication("MyCookieAuth")
.AddCookie("MyCookieAuth", options =>
{
options.Cookie.Name = ".AspnetCore.Cookie";
options.Cookie.HttpOnly = true;
options.LoginPath = "/login";
options.ExpireTimeSpan = TimeSpan.FromMinutes(60);
});
< /code>
Nach bestem Wissen mache ich alles richtig. Der logische Fluss entspricht im Grunde der Microsoft -Dokumentation, und dennoch, wenn ich diese ausführte und sie testet, ist kein Cookie an meinen Client -Browser angehängt.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post