繁体   English   中英

Asp.net core 5、使用Identity,如何更改[Authorize]属性的默认重定向?

[英]Asp.net core 5, using Identity, how do I change the default redirect of the [Authorize] Attribute?

[Authorize]非常适合锁定页面,但我正在构建一个用户很少的新产品,它引导人们登录是没有意义的,因为还没有人登录。 它应该引导他们注册。

但我正在努力寻找一种简单的方法来做到这一点,而无需大量中间件。

您可以在启动时更改LoginPath ,但我怀疑这不能回答您的问题,因为当存在足够多的用户时会发生什么?

要更改登录路径,您可以添加:

 services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
         .AddCookie(cookieOptions =>
         {
            cookieOptions.LoginPath = "/register";
            cookieOptions.AccessDeniedPath = "/account/denied";
            cookieOptions.ExpireTimeSpan = TimeSpan.FromMinutes(120);
         });

但是,如果您在达到临界质量时想要切换,那么这还不够。

编辑一种方法可能是这样的:

创建一个loginOrRegister页面。 然后在这个页面上点击数据库(或者任何你用来查看你是否达到了临界质量或其基于 cookie 的已知用户),然后要么

  • 重定向到登录

或者

  • 重定向注册

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM