2017-09-06 3 views
0

Dans mon code .net core 1.1, je procède à l'authentification comme suit (qui envoie le jeton support à l'URL externe et recherche les revendications dans le jeton de retour). Ce code est en Configure méthodeMigration de Core 1.1 à 2.0 - Authentification

app.UseCookieAuthentication(new CookieAuthenticationOptions 
     { 
      AuthenticationScheme = "Cookies" 
     }); 

     app.UseOpenIdConnectAuthentication(new OpenIdConnectOptions 
     { 
      AuthenticationScheme = "oidc", 
      SignInScheme = "Cookies", 

      Authority = signinAuthority, 
      RequireHttpsMetadata = signinHTTPS, 

      ClientId = "skybus", 
      ClientSecret = "secret", 

      ResponseType = "code id_token", 
      Scope = { "api1", "offline_access" }, 

      GetClaimsFromUserInfoEndpoint = true, 
      SaveTokens = true 
     }); 

Maintenant, je mis à jour mon code .NET Core 2.0 tous les deux UseCookieAuthentication & UseOpenIdConnectAuthentication sont modifiés. Je trouve qu'il est difficile de trouver ce qui doit être fait dans ce cas

Qu'est-ce que je l'ai changé est le suivant dans ConfigureServices méthode

services.AddAuthentication(options => { 
      options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme; 
      options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme; 
     }) 
      .AddCookie() 
      .AddOpenIdConnect(o => 
      { 
       o.Authority = signinAuthority; 
       o.SignInScheme = "Cookies"; 
       o.RequireHttpsMetadata = signinHTTPS; 
       o.ClientId = "skybus"; 
       o.ClientSecret = "secret"; 
       o.ResponseType = "code id_token"; 
       o.GetClaimsFromUserInfoEndpoint = true; 
       o.SaveTokens = true; 
       o.Scope.Add("api1"); 
       o.Scope.Add("offline_access"); 
      }); 

dans le navigateur que je vois cette URL après les modifications ci-dessus. Il doit soit me montrer la page de connexion externe si l'utilisateur n'est pas connecté ou revenir à la page d'accueil de mon site

http://localhost:5000/Account/Login?ReturnUrl=%2F

Répondre

0

Je ne sais pas si vous utilisez IdentityServer4 mais ils ont fourni quelques exemples sur github pour ASP.NET Core 2.0.

J'espère que cela vous aide.

Sample Project