0

im folgenden Fehler in startup.css bekommen, während Token von AD Azure ausgegeben authenticateingJWT Token basierte Authentifizierung in Azure AD

JwtBearerAppBuilderExtensions.UseJwtBearerAuthentication (IA pplicationBuilder, JwtBearerOptions) 'ist veraltet:' Siehe go.microsoft. com/fwlink /? linkid = 845470 ';

Und mein Code

app.UseJwtBearerAuthentication(new JwtBearerOptions 
      { 
       AutomaticAuthenticate = true, 
       AutomaticChallenge = true, 
       Authority = String.Format(Configuration["AzureAd:AadInstance"], Configuration["AzureAD:Tenant"]), 
       Audience = Configuration["AzureAd:Audience"], 
      }); 

Jeder Vorschlag, bitte ich zu Azure und Web-API bin neu? Dank

+0

Haben Sie den Link: https: // Github .com/aspnet/Sicherheit/Probleme/1310? Die Authentifizierung hat sich in 2.0 etwas geändert. Diese Art der Definition der Authentifizierungs-Middleware ist nun veraltet. – juunas

+0

Hallo @juunas Danke für die Antwort, ja, ich habe bereits diesen Link überprüft, konnte aber nicht herausfinden, wie ich mit meinem Problem umgehen soll. Wenn Sie einen Code oder mehr Informationen haben, wäre das eine große Hilfe. –

Antwort

0

und mit dem folgenden Code habe ich es funktioniert now..Thanks

public void ConfigureServices(IServiceCollection services) 
     { 

      services.AddAuthentication(options => 
      { 
       options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; 
      }) 
      .AddJwtBearer(jwtOptions => 
      { 
       jwtOptions.Authority = String.Format(Configuration["Logging:AzureAd:AadInstance"], Configuration["Logging:AzureAD:Tenant"]); 
       jwtOptions.Audience = Configuration["Logging:AzureAd:Audience"]; 
       jwtOptions.Events = new JwtBearerEvents 
       { 
        OnAuthenticationFailed = AuthenticationFailed 
       }; 
      }); 

      services.AddMvc(); 
     } 

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) 
     { 

      loggerFactory.AddConsole(Configuration.GetSection("Logging")); 
      loggerFactory.AddDebug(); 

      app.UseAuthentication(); 
      app.UseMvc(); 
     } 

     private Task AuthenticationFailed(AuthenticationFailedContext arg) 
     { 
      // For debugging purposes only! 
      var s = $"AuthenticationFailed: {arg.Exception.Message}"; 
      arg.Response.ContentLength = s.Length; 
      arg.Response.Body.Write(Encoding.UTF8.GetBytes(s), 0, s.Length); 
      return Task.FromResult(0); 
     } 
0

Verwenden Sie das nuget Paket Microsoft.Owin.Security.ActiveDirectory statt:

app.UseWindowsAzureActiveDirectoryBearerAuthentication(new WindowsAzureActiveDirectoryBearerAuthenticationOptions 
{ 
    TokenValidationParameters = new TokenValidationParameters 
    { 
     ValidAudience = ConfigurationManager.AppSettings["AzureAd:Audience"] 
    }, 
    Tenant = ConfigurationManager.AppSettings["AzureAd:AADInstance"] 
}); 
+0

Danke für die Antwort ..Wot Namespace sollte ich verwenden, um UseWindowsAzureActiveDirectoryBearerAuthentication zu verwenden. Ich erhalte Fehler iapplicationbuilder enthält keine Definition für UseWindowsAzureActiveDirectoryBearerAuthentication –

+0

Sie müssen das 'microsoft.Owin.Security.ActiveDirectory'-Paket nuget installieren. Die Erweiterungsmethode für IAppBuilder befindet sich in der Klasse "WindowsAzureActiveDirectoryBearerAuthenticationExtensions". – peco

+0

Wie läuft es @ashishjayara? – peco

Verwandte Themen