2

Ich verwende den Azure App Service mit Authentifizierung mit Google- und Microsoft-Konto. Ich kann zugreifen mysite/.auth/me, ohne ein Problem bei der Anmeldung in. Aber aufzufrischen Token, /.auth/refresh ich zurückkehren folgende Ausnahme.Berechtigungsfehler beim Zugriff auf /.auth/refresh

Sie sind nicht berechtigt, dieses Verzeichnis oder diese Seite anzuzeigen.

Nicht sicher, welcher Zugriff hier in Azure Blade gewährt werden soll.

Antwort

2

Die Fehlermeldung ist eigentlich ein bisschen irreführend. Es ist nicht so, dass Sie keine Berechtigung zum Zugriff auf die API haben, sondern es sind wahrscheinlich keine Aktualisierungstoken in Ihrem Tokenspeicher vorhanden. Die Art und Weise, Refresh-Token während der Benutzeranmeldung zu erwerben, ist für jeden Anbieter unterschiedlich. Weitere Details hier:

https://cgillum.tech/2016/03/07/app-service-token-store/

Damit dies funktioniert, das Token speichern müssen refresh Token für Ihren Provider enthalten. Wenn Sie nicht vertraut sind mit, wie dies zu tun, sind hier einige Hinweise:

  • Google: Fügen Sie einen "access_type=offline" Abfrage-String-Parameter auf Ihren /.auth/login API-Aufruf (wenn das Mobile Apps SDK, Sie können dies zu einer der LogicAsync-Überladungen hinzufügen).
  • Microsoft-Konto: Wählen Sie im Azure-Verwaltungsportal den Bereich wl.offline_access aus.
  • Azure AD: Dies ist ein wenig komplex, aber werfen Sie einen Blick auf meine nächste Post auf enabling Graph API access. Befolgen Sie die Installationsschritte, und Sie erhalten außerdem Aktualisierungstokens für Azure AD (Sie können Read directory data und resource=… Teile weglassen, wenn sie nicht auf Sie zutreffen). Der Plan ist, dies in Zukunft zu vereinfachen.