AuthenticationManager有两种方法.
void SignIn(params ClaimsIdentity[] identities); Task<AuthenticateResult> AuthenticateAsync(string authenticationType);
他们的目的是什么?在什么情况下应该使用它们?
解决方法
我认为目的是在Authenticate和SignIn方法的名称上描述的
因此,AuthenticateAsync的目的基本上是获取身份验证票证
await ticket = Authentication.AuthenticateAsync(DefaultAuthenticationTypes.ExternalBearer);
它返回一个像这样的AuthenticateResult
{Microsoft.Owin.Security.AuthenticateResult} Description: {Microsoft.Owin.Security.AuthenticationDescription} Identity: {System.Security.Claims.ClaimsIdentity} Properties: {Microsoft.Owin.Security.AuthenticationProperties}
Context.Authentication.SignIn(ticket.Properties,ticket.Identity);
您可以在下面的示例代码中清楚地看到它
var ticket = await Context.Authentication.AuthenticateAsync(Options.AuthenticationType); if(ticket != null) { Context.Authentication.SignIn(ticket.Properties,ticket.Identity); Response.Redirect(ticket.Properties.RedirectUri); return true; }