1

Ich versuche, Facebook-Authentifizierung mit Dot-Net Core 2.0 einzurichten, aber in meiner ExternalLoginCallbackAsync-Methode, ich bekomme immer Null als Antwort Ich habe die Dokumentation gefolgt und bis jetzt ist das was ich habe getan:GetExternalLoginInfoAsync gibt null dotnet core 2.0 zurück

in meinem ConfigureServices in der Startdatei:

services.AddAuthentication(
      options => options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme); 

services.AddAuthentication().AddFacebook(
    f => { 
     f.AppId = Configuration["facebook-app-id"]; 
     f.AppSecret = Configuration["facebook-app-secret"]; 
}); 

in Anmeldungs ​​Controller:

public IActionResult ExternalLogin(string provider) 
     { 

      var authProperties = new AuthenticationProperties 
      { 
       RedirectUri = Url.Action("ExternalLoginCallbackAsync", "Login")     
      }; 
      return Challenge(authProperties,provider); 
     } 

in meiner ExternalLoginCallbackAsync Methode wenn ich

var info = await _signInManager.GetExternalLoginInfoAsync(); 

jeden Hinweis zu tun, warum bin ich immer null zu bekommen?

dank

+2

können Sie Sehen Sie sich die Zeile 555 im [SignInManager] (https://github.com/aspnet/Identity/blob/rel/2.0.0/src/Microsoft.AspNetCore.Identity/SignInManager.cs) für die verschiedenen Bedingungen für die Rückkehr an Null. Für mich war es, weil MS ihre "NameIdentifier" Forderung haben muss, die im Grunde die gleiche wie Unteranspruch ist. Um das zu beheben, habe ich eine ClaimAction hinzugefügt, um SubIdentifier zuzuordnen. –

+0

Danke, nachdem du in die richtige Richtung gezeigt hast, finde ich es heraus –

Antwort

3

ich am SignInManager Code sah aus, als Lasse VABE Rolstad für mich vorgeschlagen und ein Schlüssel in den Auth Eigenschaften fehlte so hatte ich es so manuell hinzuzufügen:

var authProperties = new AuthenticationProperties 
{ 
    RedirectUri = Url.Action("ExternalLoginCallbackAsync", "Login"), 
    Items = { new KeyValuePair<string, string>("LoginProvider",provider) } 
}; 
Verwandte Themen