【问题标题】:Converting a website that uses FormsAuthentication to use OWIN Cookie Autentication?将使用 FormsAuthentication 的网站转换为使用 OWIN Cookie 身份验证?
【发布时间】:2018-03-20 20:37:05
【问题描述】:

我们有一个相当大且复杂的网站,目前正在使用 ASP.NET/MVC 的 FormsAuthentication 来管理身份验证。

一个复杂的问题是该站点无法访问任何数据库,不能用于身份验证,也不能用于任何其他目的。

LoginController post 操作调用 web 服务来执行身份验证,传递用户名/密码,并接收回会话令牌。如果认证成功,LoginController 会调用 FormsAuthentication.SetAuthCookie。

像往常一样,所有允许非匿名的端点都设置了 [Authorize] 属性,如果未设置 FormsAuthentication AuthCookie,该属性将重定向回登录页面。

我需要做什么才能将其替换为 OWIN 的 Cookie 身份验证?

我见过的大多数演示都涉及到更多的 OWIN 中间件,而不仅仅是 cookie 身份验证——从实体框架数据库中提取身份等。这个网站没有数据库,这个网站也没有数据库网站。

有什么想法吗?

指向博客文章、MS 文档等的指针?

(这是在 .NET 4.5 中,而不是在 .NET Core 中。)

【问题讨论】:

    标签: c# asp.net asp.net-mvc asp.net-mvc-4 owin


    【解决方案1】:

    应该评论但缺乏声誉,所以我在这里发帖。

    您使用什么身份验证协议?您的用例似乎类似于使用 Azure Active Directory 对用户进行身份验证。

    This guide 将 Azure AD 集成到 Web 应用程序可能是一个不错的起点。它使用 OWIN 中间件和 OpenIdConnect 进行身份验证。

    您还可以从其main developer's page 中找到更多选项。在指南部分下,您可以找到不同身份验证协议的使用,在参考部分中,您可以找到代码示例的链接。

    【讨论】:

    • 我们没有使用他们定义的任何身份验证协议 - 图片中也没有 Active Directory。 Web 服务查询数据库并返回成功或失败。
    猜你喜欢
    • 2023-04-05
    • 1970-01-01
    • 2023-04-01
    • 2016-02-13
    • 2014-09-15
    • 2015-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多