AuthenticationManager
有两种方法。
void SignIn(params ClaimsIdentity[] identities);
Task<AuthenticateResult> AuthenticateAsync(string authenticationType);
他们的目的是什么?在什么情况下应该使用它们?
答案 0 :(得分:1)
我认为目的是在验证和登录
的方法名称中描述的因此 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;
}
答案 1 :(得分:0)