我正在使用.NET MVC 5应用程序。我不想使用Entity Framework。我想要对RavenDB数据库进行身份验证。看起来我想要替换Account Controller中提供的UserManager。我认为我可以重写所有UserManager函数以与我的数据库配合使用,但是我不理解ClaimsIdentity对象。
在SignInAsync方法中,调用了UserManager.CreateIdentityAsync(...)方法。我知道它返回一个ClaimsIdentity对象。我不知道如何自己创建ClaimsIdentity对象。
我看到它有4个属性Actor,BootstrapContext,Claims和Label。我不知道这些属性的用途,也不知道如何正确生成它们。我假设正确生成它们很重要,因为这是身份验证cookie的生成方式。
我查看了ClaimsIdentity对象的说明这里,但那并没有真正帮助我理解。
如果我可以看到CreateIdentityAsync()的代码,那可能会有帮助。
如果我做错了,请告诉我。否则,如果有人能指导我如何生成ClaimsIdentity对象,那将是有帮助的。
ClaimsIdentity identity = new ClaimsIdentity
{
Actor = ????,
BootstrapContext = ?????,
Claims = ?????,
Label = ?????
}
ClaimsIdentity
而不完全理解如何以及为什么这样做只会在未来带来麻烦。对于理解框架的预期使用方式加1。 - Katstevens