BlazorServer-SignInAsyncCookieBehaviour
创始人
2024-12-21 14:08:00
0

在Blazor Server中使用SignInAsync方法登录时,会自动创建名为“.AspNetCore.Cookies”的身份验证Cookie,它的过期时间默认为会话结束。但有时我们希望让Cookie的过期时间更长,例如一个月或更长的时间。

为了控制Cookie的过期时间,我们需要传递一个AuthenticationProperties对象给SignInAsync方法,并在该对象中设置ExpiresUtc属性。

例如,以下代码将创建一个过期时间为30天的Cookie:

var claims = new List
{
    new Claim(ClaimTypes.Name, "john"),
    new Claim(ClaimTypes.Role, "admin")
};

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

var authenticationProperties = new AuthenticationProperties
{
    IsPersistent = true,
    ExpiresUtc = DateTimeOffset.UtcNow.AddDays(30)
};

await HttpContext.SignInAsync(
    CookieAuthenticationDefaults.AuthenticationScheme,
    new ClaimsPrincipal(claimsIdentity),
    authenticationProperties);

在上面的代码中,我们创建了一个ClaimsIdentity对象和一个AuthenticationProperties对象。然后我们调用HttpContext.SignInAsync方法,并将这两个对象作为参数传递给它。这将创建包含我们的身份验证信息和过期时间的Cookie。

注意,我们在AuthenticationProperties对象中设置IsPersistent属性为true,以便Cookie在浏览器关闭后仍然存在。

通过这种方式,我们就可以在Blazor Server中控制身份验证Cookie的行为,包括过期时间等。

相关内容

热门资讯

黑科技辅助!wepoke智能a... 黑科技辅助!wepoke智能ai辅助工具,(AAPoKer辅助)一向存在有挂,安装教程(有挂分享);...
黑科技辅助!wepoke有挂真... 黑科技辅助!wepoke有挂真的有挂,(智星德州辅助)都是真的是有挂,新2025教程(有挂功能);智...
黑科技辅助!wepoke智能a... 黑科技辅助!wepoke智能ai辅助工具,(来玩德州app)切实是有挂,靠谱教程(有挂解惑),来玩德...
黑科技辅助!wepokeai代... 黑科技辅助!wepokeai代打,(WePoKe发牌)好像有挂,揭秘教程(有挂秘笈);1、超多福利:...
黑科技辅助!wepoke透明黑... 黑科技辅助!wepoke透明黑科技,(微扑克游戏)一贯真的有挂,wpk教程(有挂秘诀);人气非常高,...
黑科技辅助!wepoke黑科技... 黑科技辅助!wepoke黑科技ai设备,(德州ai智能)从前真的是有挂,AI教程(发现有挂)是一款可...
黑科技辅助!wepoke透明黑... 《黑科技辅助!wepoke透明黑科技,(AAPoKerai机器人)从来真的有挂,解密教程(有挂讲解)...
推荐一款(中至常熟麻将技巧)本... 您好,中至常熟麻将技巧这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在...
盘点几款(天天贵阳手机麻将通用... 盘点几款(天天贵阳手机麻将通用胡牌神器)往昔真的有挂(辅助挂)2025版教程(2026已更新)(哔哩...
一分钟教你(豆豆斗牌辅助器)确... 一分钟教你(豆豆斗牌辅助器)确实是有挂(辅助挂)揭秘教程(2021已更新)(哔哩哔哩);豆豆斗牌辅助...