ASP.NetIdentity登录重定向强制使用协议(Https)第二部分(.Net6++)
创始人
2024-09-19 00:01:05
0

为了确保 ASP.Net Identity 登录功能在传输敏感信息时安全可靠,我们需要强制要求使用 Https 协议进行重定向。下面是一种简单的

  1. 在 Startup.cs 文件的 Configure 方法中添加以下代码:

app.Use(async (context, next) => { if (context.Request.IsHttps || context.Request.Headers["X-Forwarded-Proto"] == Uri.UriSchemeHttps) { await next(); } else { var withHttps = context.Request.Scheme; withHttps = "https://" + withHttps.Substring("http://".Length); var newUrl = withHttps + context.Request.Path + context.Request.QueryString; context.Response.Redirect(newUrl); } });

该代码段首先检查请求是否已经使用了 Https 协议,或者通过“X-Forwarded-Proto”请求头信息来检查协议。如果是,则调用 next 方法来执行应用程序中的下一个中间件。

如果请求不使用 Https 协议,则使用 Request.Scheme 获取原始协议(可能是“http”),并将其替换为“https”。然后从 Request.Path 和 Request.QueryString 构建重定向 URL,并使用 Response.Redirect 方法将请求重定向到新位置。

  1. 在 Login.cshtml.cs 文件中,使用以下代码:

[AllowAnonymous] public async Task OnPostAsync(string returnUrl = null) { returnUrl ??= Url.Content("~/"); ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();

if (ModelState.IsValid)
{
    // 省略其他代码
    var result = await _signInManager.PasswordSignInAsync(Input.Email, Input.Password, Input.RememberMe, lockoutOnFailure: true);
    if (result.Succeeded)
    {
        _logger.LogInformation("User logged in.");
        return LocalRedirect(returnUrl);
    }
    if (result.RequiresTwoFactor)
    {
        return RedirectToPage("./LoginWith2fa", new { ReturnUrl = returnUrl, RememberMe = Input.RememberMe });

相关内容

热门资讯

透视揭幕!wepoker透视脚... 透视揭幕!wepoker透视脚本,wepoker免费脚本咨询-都是真的有辅助神器(哔哩哔哩)1、游戏...
透视专业!wepoker透视脚... 透视专业!wepoker透视脚本免费app,wepoker怎么挂底牌-一直一直总是有辅助插件(哔哩哔...
透视推荐!wpk透视辅助,wp... 透视推荐!wpk透视辅助,wpk安卓下载辅助-一贯有辅助插件(哔哩哔哩)1、用户打开应用后不用登录就...
透视有挂!购买的wpk辅助在哪... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家在这款游戏中打...
透视教你!wpk透视辅助方法,... 透视教你!wpk透视辅助方法,wpk插件-一贯是真的有辅助软件(哔哩哔哩)1、不需要AI权限,帮助你...
透视了解!aapoker怎么选... 透视了解!aapoker怎么选牌,aapoker透视脚本-原来一直都是有辅助app(哔哩哔哩)1、玩...
透视曝光!hhpoker辅助挂... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家在这款游戏中打...
透视必备!如何下载wpk透视版... 透视必备!如何下载wpk透视版,有哪些免费的wpk作弊码-果然有辅助插件(哔哩哔哩)能透视中分为三种...
透视解谜!德普之星私人局辅助器... 透视解谜!德普之星私人局辅助器,德普之星透视辅助插件-好像存在有辅助方法(哔哩哔哩)1、打开软件启动...
透视解迷!wpk是真的还是假的... 透视解迷!wpk是真的还是假的,wpk透视辅助下载-切实是真的有辅助攻略(哔哩哔哩)破解侠是真的助透...