2017-09-19 59 views
5

AuthenticationManager có hai phương pháp.Mục đích của AuthenticationManager.SignIn vs AuthenticationManager.AuthenticateAsync là gì?

void SignIn(params ClaimsIdentity[] identities); 
Task<AuthenticateResult> AuthenticateAsync(string authenticationType); 

Mục đích của chúng là gì? Họ nên sử dụng tình huống nào?

+1

Bạn có thử [link] này (https://msdn.microsoft.com/en-us/library/microsoft.owin.security.iauthenticationmanager.authenticateasync (v = vs.113) .aspx) – Nilesh

+0

Tôi muốn điều này câu hỏi để có một câu trả lời thực sự tốt bao gồm một lời giải thích giúp rất nhiều người. Đó là lý do tại sao tôi đã thêm tiền thưởng. Tôi không muốn một liên kết. (nhưng cảm ơn anyway :) –

Trả lời

0

Tôi nghĩ rằng mục đích được mô tả trên tên của các phương pháp Authenticatesignin

Vì vậy, mục đích của AuthenticateAsync được về cơ bản nhận được một xác thực vé

await ticket 
= Authentication.AuthenticateAsync(DefaultAuthenticationTypes.ExternalBearer); 

nó trả về một AuthenticateResult như thế này

{Microsoft.Owin.Security.AuthenticateResult} 
    Description: {Microsoft.Owin.Security.AuthenticationDescription} 
    Identity: {System.Security.Claims.ClaimsIdentity} 
    Properties: {Microsoft.Owin.Security.AuthenticationProperties} 

và với Kết quả này bây giờ bạn signin thể (Thêm thông tin nhận dạng với bối cảnh)

Context.Authentication.SignIn(ticket.Properties, ticket.Identity); 

Bạn có thể nhìn thấy nó rất rõ ràng trong mã mẫu bên dưới

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; 
    } 
0

Dưới đây là mô tả về hai phương pháp này dựa trên công cụ visual-tip của studio. Nó có thể hữu ích.

AuthenticationManager.SignIn AuthenticationManager.AuthenticateAsync

+1

Đối với một tiền thưởng của một 100 điểm, đây là một ánh sáng khá về chi tiết câu trả lời. Tôi có thể tự nhìn vào đầu công cụ. –