Logout mit django-social-auth

8

Ich arbeite ein wenig mit django-social-auth und verwende Twitter-Authentifizierung.

Ich kann mich anmelden.

Aber wenn ich versuche, mich mit django.contrib.auth.logout abzumelden, loggt es sich nicht aus.

Wie kann ich mich abmelden?

Danke.

    
rookieRailer 25.01.2013, 20:25
quelle

3 Antworten

9

Versuchen Sie, sich nur aus der Django App auszuloggen oder möchten Sie den Twitter-Zugang "vergessen"? Normalerweise wird das Twitter-Authentifizierungs-Token für eine vereinfachte Anmeldung gespeichert, wenn ein Benutzer das nächste Mal eine Verbindung zu Twitter herstellen möchte, so dass der Benutzer den Zugriff nicht erneut "akzeptieren" muss.

Django-Abmeldung

Wenn Sie sich nur vom Django-Authentifizierungssystem abmelden möchten, sollte es ausreichen, die django.contrib.auth.views.logout -Ansicht zu verwenden oder eine benutzerdefinierte Abmeldesicht zu erstellen.

Soziale Authentifizierung trennen

Um die Verbindung zu einem sozialen Konto vollständig aufzuheben, müssen Sie die Funktionen zum Trennen der Verbindung in social-auth verwenden. Sie können die Verbindungs-URL mithilfe des folgenden Schablonentags abrufen:

%Vor%

Weitere Informationen finden Sie in Ссылка .

Aufforderung zur Genehmigung erzwingen

Da Sie Ihrer App bereits Zugriff auf den OAuth-Anbieter gewährt haben, speichert der Auth-Provider diese Entscheidung. Es gibt normalerweise zwei Möglichkeiten, um eine Bestätigung dieser Zugriffsberechtigung zu erzwingen:

  • Heben Sie die Zugriffsberechtigung in der Verwaltungskonsole Ihres Authentifizierungsanbieters auf (z. B. den Zugriff auf Twitter-Apps abzulehnen).
  • Legen Sie ein zusätzliches OAuth-Argument fest, das die Genehmigungsaufforderung erzwingt. Ich bin mir nicht sicher, ob Twitter so etwas bietet, aber wenn Sie Google OAuth2 verwenden, können Sie einfach {'approval_prompt': 'force'} zur Einstellung GOOGLE_OAUTH2_AUTH_EXTRA_ARGUMENTS hinzufügen.
Danilo Bargen 19.04.2013 15:17
quelle
5

Haben Sie eine Abmeldesicht? Sie müssen eine Abmeldesicht haben.

Beispiel:

%Vor%     
Glyn Jackson 25.01.2013 22:44
quelle
3

Diese Antwort ist veraltet, da django-social-auth jetzt python-social-auth

Siehe neuere Stack Overflow-Antwort hier .

Lesen Sie die Dokumentation hier

    
Huston 21.03.2014 19:28
quelle

Tags und Links