在Forms身份验证应用程序和OWIN身份验证应用程序之间共享身份验证

时间:2019-10-09 10:10:32

标签: asp.net authentication forms-authentication

如何在实现不同身份验证类型的两个站点之间共享身份验证?

domain1.com由.NET2实现,并使用表单身份验证。

domain2.com是使用.NET4 MVC实现的,并使用OWIN身份验证(用户名密码)。

当用户先登录到domain1.com然后访问domain2.com时,domain2不应要求他再次登录。反之亦然。

我在两个配置文件中都设置了一个通用的machineKey。以下是domain1.com中的身份验证代码。

Dim oCookie As HttpCookie = System.Web.Security.FormsAuthentication.GetAuthCookie(username, False)
                    Dim ticket As FormsAuthenticationTicket = System.Web.Security.FormsAuthentication.Decrypt(oCookie.Value)

                    Dim oTicket As FormsAuthenticationTicket = New FormsAuthenticationTicket(ticket.Version, username, DateTime.Now, DateTime.Now.AddMinutes(60), True, "")
                    Dim cookieStr As String = FormsAuthentication.Encrypt(oTicket)

                    oCookie.Value = cookieStr
                    Response.Cookies.Add(oCookie)

                    System.Web.Security.FormsAuthentication.RedirectFromLoginPage(username, False)

0 个答案:

没有答案