将授权属性“/Account/Login”更改为自己的登录路径
Posted
技术标签:
【中文标题】将授权属性“/Account/Login”更改为自己的登录路径【英文标题】:Change Authorized Attribute '/Account/Login' to own Login path 【发布时间】:2021-10-28 03:00:59 【问题描述】:我有AuthController.cs
和路由:
auth/login
- 登录页面,auth/register
- 注册页面。
我还有另一个控制器 - ClientController.cs
- 它具有 [Authorized]
属性。
当我试图访问客户的页面时,我会自动重定向到Account/Login
,但它的登录路径不正确。
问题:如何更改[Authorized]
属性重定向路径?
【问题讨论】:
【参考方案1】:实际上...我们需要了解Authentication Scheme 的概念才能使其正常工作...但为了简单起见,我假设您只是使用默认配置。试试这个:
services.AddAuthentication("YourSchemeName").AddCookie("YourSchemeName",
config =>
config.Cookie.Name = "YourCookieName";
config.LoginPath = "/auth/login";
);
将 .AddCookie()
替换为您正在使用的身份验证方法(如 Jwt 或某些自定义 AuthenticationHandler 将是 .AddScheme<>()
)
【讨论】:
但是,我使用的是身份。这对身份有效吗? 是的,它确实...我不知道你的目标是Identity Server还是Microsoft Identity platform,但不管怎样,它都有效以上是关于将授权属性“/Account/Login”更改为自己的登录路径的主要内容,如果未能解决你的问题,请参考以下文章
将 ASP.NET Core Razor 页面中的默认页面更改为登录页面