我正在尝试在 ASP.NET 5 之上实现我自己的 JWT Bearer 身份验证版本,而不参考任何现有的 JWT 令牌处理程序类。了解身份验证和授权的内部机制是我的练习。
我有一个项目要玩。在这里看到它。JWT 令牌代码在单独的程序集中 - SimpleJwtAuth
. 它可以通过用户登录名和密码生成令牌。但我对身份验证有疑问。我继承自AuthenticationHandler<TAuthOptions>
,它可以返回AuthenticationResult.Failed
或AuthenticationResult.Success
with AuthenticationTicket
。
问题是我看不到这如何AuthenticationTicket
让用户登录。我应该自己调用SignInManager.SignInAsync
,还是我忘记设置任何参数以使这自动发生?
说到例子:我看到让用户登录是开发人员的代码责任。这让我觉得我应该做类似的事情。但是然后 - 为什么我们需要AuthenticateResult
和它的门票呢?