我们有一个相当庞大且复杂的网站,目前正在使用ASP.NET / MVC' FormsAuthentication来管理身份验证。
一个复杂因素是该网站无法访问任何数据库,不能用于身份验证,也不能用于任何其他目的。
LoginController post动作调用webservice来执行身份验证,传递用户名/密码,并收回会话令牌。如果身份验证成功,LoginController将调用FormsAuthentication.SetAuthCookie。
与往常一样,所有非匿名允许的端点都设置了[Authorize]属性,如果未设置FormsAuthentication AuthCookie,则会重定向回登录页面。
使用OWIN的Cookie身份验证替换它需要做什么?
我见过的大多数演示都涉及到OWIN的中间件,而不仅仅是cookie身份验证 - 从Entity Framework数据库中提取身份等等。本网站没有数据库,那里不能成为本网站的数据库。
有什么想法吗?
指向博客文章,MS文档等等?
(这是在.NET 4.5中,而不是在.NET Core中。)
答案 0 :(得分:0)
应该发表评论但缺乏声誉,所以我在这里发帖。
您使用的是哪种身份验证协议?您的用例类似于使用Azure Active Directory对用户进行身份验证。
将Azure AD集成到Web应用程序的This guide可能是一个很好的起点。它使用OWIN中间件和OpenIdConnect进行身份验证。
您还可以从main developer's page找到更多选项。在“指南”部分下,您可以找到使用不同的身份验证协议,在“参考”部分中,您可以找到代码示例的链接。