Ich benutze asp.net Core 2.0 mit IdentityServer 4 und Angular 5.0.autorisieren Callback/redirect_url Routen zu clientside Route führt zu Rekursion Anrufe
Mein Projekt ist auf dieser Probe basiert:
https://github.com/scottbrady91/Angular4-OidcClientJs-Example
Wenn der Benutzer in erfolgreich angemeldet ist er auf den bestimmten autorisierten Rückruf umgeleitet wird.
In Scott Brady`s Probe, dass client Route genannt wird:
{
path: 'auth-callback',
component: AuthCallbackComponent,
},
Bisher funktioniert alles.
ABER ... meine echte Anwendung hat NUR geschützte Routen.
Also änderte es die obige Probe:
{
path: 'auth-callback',
component: AuthCallbackComponent,
**canActivate: [AuthGuardService]**
},
jetzt bekomme ich eine Rekursion Umleitung von Serverside authorise Endpunkt des Auth-Rückruf und zurück zum server authorise Endpunkt.
kann ich nicht einmal im Browser debuggen, weil alles schnell springt um mit den Quelldateien ...
- Was ist die Auth-Rückruf ROUTE aussehen soll? Muss es ungeschützt sein? Wie gesagt, ich habe nur Routen geschützt.
- Was muss ich in Scott Brady`s Sample beheben, dass die Rekursion aufhört?
Ich fand heraus, dass der Benutzer Feld in der auth.aervice.ts nach der auth.guard.ts.isLoggedIn() Funktion null ausgelöst wird, aber ich weiß nicht, warum der Anruf für den Benutzer null zurück . Dieses Null-Benutzer-Problem ist nur mit dem Auth-Callback vorher nicht.
Ich habe es schon gelöst, danke! Es hat nichts mit dem Account zu tun.Machen Sie einfach die Umleitung uri =>/signin-oidc ungeschützt, rufen Sie userManager.completeAuthentication.then (router.navigate (/ urltowhichIwantedbeforefore); in der SigninOidcComponent und das ist es :-) – Elisabeth