Wie hostet ASPNET CORE APP mit IdentityServer4 in IIS. Die App läuft gut von localhost, aber nicht als eine Webanwendung in IIS eingerichtet.Identityserver4 - Hosting in IIS
Zum Beispiel
http://localhost:5000/connect/token arbeitet aber http://example.com/myauthapp/connect/token nicht erreichbar ist - Rückkehr 500 - Interner Serverfehler, wenn von einer Konsolenanwendung mit Identitätsmodell oder über Postbote versucht. Ich kann mich über einen Webbrowser in der App anmelden, aber nicht über eine Konsolenanwendung oder einen Postboten.
Weitere Problembehandlung und ich finde die folgenden. Eine nicht behandelte Ausnahme ist aufgetreten: IDX10638: Der SignatureProvider konnte nicht erstellt werden, "key.HasPrivateKey" ist false, Signaturen können nicht erstellt werden. Schlüssel: Microsoft.IdentityModel.Tokens.RsaSecurityKey. System.InvalidOperationException: IDX10638: Der SignatureProvider konnte nicht erstellt werden, "key.HasPrivateKey" ist false, Signaturen können nicht erstellt werden. Schlüssel: Microsoft.IdentityModel.Tokens.RsaSecurityKey. bei Microsoft.IdentityModel.Tokens.AsymmetricSignatureProvider..ctor (SecurityKey Schlüssel, String-Algorithmus, Boolean willCreateSignatures) bei Microsoft.IdentityModel.Tokens.CryptoProviderFactory.CreateSignatureProvider (SecurityKey Schlüssel, String-Algorithmus, Boolean willCreateSignatures) bei System.IdentityModel.Tokens .Jwt.JwtSecurityTokenHandler.CreateEncodedSignature (String-Eingang, SigningCredentials SigningCredentials) bei System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.WriteToken (Security Token) bei IdentityServer4.Services.DefaultTokenCreationService.CreateJwtAsync (JwtSecurityToken jwt) bei IdentityServer4.Services.DefaultTokenCreationService .d__3.MoveNext() --- Ende des Stack-Trace vom vorherigen Speicherort, an dem die Ausnahme ausgelöst wurde ---
Bitte beraten, was ich tun soll?
Nach der Installation von X509Certificate im Server funktioniert alles einwandfrei. Danke Jeffrey T. Fritz für den folgenden Artikel half mir zu lösen https://blogs.msdn.microsoft.com/webdev/2016/10/27/bearer-token-authentication-in-asp-net-core/ – Arun
Hi @ Arun. Ich hatte auch das gleiche Problem wie du auf meinem Testserver (www). Also habe ich ein selbstsigniertes "* .pfx" -Cert mit dem Visual Studio-Befehl auf meinem lokalen PC erstellt und dann mit "AddSigningCredential" zur Identität hinzugefügt, und das funktioniert auf localhost einwandfrei. Aber auf dem Testserver (www) bekomme ich jetzt einen Fehler von 500, ohne Protokolle. Wie haben Sie ein * .pfx-Zertifikat für Ihre Website erstellt/erhalten? (kopieren Sie es über nicht funktioniert für mich, oder Erstellen eines pfx mit IIS entweder) –
Blick auf den Benutzer, der der Prozess läuft als, dann einloggen als dieser Benutzer, damit Windows automatisch einen privaten Schlüssel für diesen Benutzer erzeugen, siehe meine Lösung und Erklärung unten – CodeCowboyOrg