Problem laufen IdentityServer4
Lerne ich über die IdentityServer4 https://identityserver4.readthedocs.io/en/release/quickstarts/0_overview.html wirken aber Probleme bekommen, es funktioniert.
Nach dem erstellen der API-Abschnitt des Projekts und entsprechend konfiguriert werden:
public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
app.UseIdentityServerAuthentication(new IdentityServerAuthenticationOptions
{
Authority = "http://localhost:5000",
RequireHttpsMetadata = false,
ApiName = "api1"
});
app.UseMvc();
}
Bekomme ich die folgende Fehlermeldung:
'IApplicationBuilder' does not contain a definition for 'UseIdentityServerAuthentication' and no extension method 'UseIdentityServerAuthentication' accepting a first argument of type 'IApplicationBuilder' could be found (are you missing a using directive or an assembly reference?)
Irgendwelche Ratschläge, was ich hier vermisst?
EDIT 1:
Ich habe bemerkt, dass ich nicht den namespace referenzieren entweder sogar tho das Paket ist installiert und vorhanden.
d.h.
using IdentityServer4.AccessTokenValidation;
oder
using IdentityServer4;
- Welche version von Visual Studio benutzt du? Ich bin mit VS 2017. Ich hatte das gleiche Problem. Allerdings wäre es zu bauen, obwohl es war, zeigt dieses Problem. Ich Schloss und öffnete VS 2017 wie @Jeremy Cook vorgeschlagen und das Problem ging Weg.
- Vs2017. Hatte dasselbe Problem in vs2015. Neustart der ide hat auch nicht geholfen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut habe ich nur geschlossen und wieder geöffnet Visual Studio 2017, und das problem ging Weg. Vielleicht Visual Studio würgte ziehen Sie das IdentityServer4.AccessTokenValidation-Paket für die erste Zeit und dem erneuten öffnen des Projektes verursacht, es noch einmal zu versuchen und diesmal gelang es.
Wenn Sie die Migration von net-core von 1,1 bis 2,0, müssen Sie die Migration den code wie beschrieben in Identity Server: API Migration ASP.NET Core 2
In der Funktion Konfigurieren
In der ConfigureServices Funktion
Müssen Sie diese Paket. Und verwenden Sie die namespace -
IdentityServer4.AccessTokenValidation
<TargetFramework>net461</TargetFramework>
. Nicht sicher, ob das verwandt ist. Ich kann sehen, dass das das Paket ist enthalten in .csproj als<PackageReference Include="IdentityServer4.AccessTokenValidation" Version="1.1.0" />
Ich hatte das gleiche Problem und ich gelöst, indem Sie die folgenden IdentityServer 4 Schnellstart-Beispiele, insbesondere die Javascript-Client Probe.
So, das ist es, was hier gearbeitet:
Abhängigkeiten überprüfen " - Versionen. Es gibt gemeldete Probleme für IdentityServer läuft mit .NET Core 2.0. In meinem API-Projekt, das ich verwendet Microsoft.Asp.NetCore.Alle version 2.0.5 und IdentityServer4.AccessTokenValidation version 2.3.0.
Innen Starten.cs, bei Konfigurieren-Methode hinzufügen: app.UseAuthentication(); wie Sie in der Beispiel.
Der Letzte Schritt ist das hinzufügen von Authentifizierung zu ConfigureServices Methode, wie es in der Beispiel:
Ist und dass gelöst in meinem Fall. Hoffentlich klappt es für Sie auch, nur lassen Sie mich wissen, wie es geht.
Happy coding.
Nur um update/Antwort, die nachfolgende version von IdentityServer4 Pakete fein gearbeitet.
Derzeit mit ID4 2.0-Pakete.
Überprüfen Sie die aktuelle Dokumentation auf github IdentityServer4:
Er stellt die Authentifizierungs-Optionen in der
ConfigureServices
Methode mit derservices.AddAuthentication
Methode.Hier ist die test server code, den Sie verwenden