【发布时间】:2017-04-16 11:06:08
【问题描述】:
我刚刚看了Introduction to Identity and Access Control in .NET 4.5 video on Pluralsight。我正在尝试从此转换旧的网络表单应用程序(不是 MVC 和 OWIN)...
Dim authTicket As New FormsAuthenticationTicket(1, "Bob", DateTime.UtcNow.ToLocalTime(), DateTime.UtcNow.ToLocalTime.AddMinutes(60), False, "Master")
Dim authCookie As New HttpCookie("MyApp", FormsAuthentication.Encrypt(authTicket))
...到ClaimsIdentity 和基于声明的方法。尽管视频中涵盖了ClaimsIdentity 及其声明,但几乎没有提到如何将它们全部连接在一起并跨页面保持用户(以前自动完成的事情)。
例如,这是否是上述设置用户声明的有效替代方法?
Dim fd As New FormsIdentity(New FormsAuthenticationTicket("MyApp", True, 60))
fd.AddClaims(New List(Of Claim) From {
New Claim(ClaimTypes.Name, "Bob"),
New Claim(ClaimTypes.Role, "Master")
})
Dim p As New ClaimsPrincipal(fd)
如果是这样,ClaimsPrincipal 如何在后续页面上存储/持久/检索?
目前我没有使用 OWIN,但如果它有利于这种情况,可以介绍它。
【问题讨论】:
标签: asp.net forms-authentication wif claims-based-identity