2017-03-02 3 views
1

저는 일종의 키오스크 앱이 될 수있는 작업을하고 있습니다. 나는 파이썬과 장고에 익숙하지 않지만 함께 굴러 가고있다. 가입을위한 나의 allauth 흐름은 소셜 로그인 (현재 Google) 또는 "로컬"이메일 주소 & 암호를 사용합니다.django-allauth socialaccount "full"logout?

Google 계정으로 로그인 한 다음 로그 아웃하면 로그인 페이지로 리디렉션됩니다. 것은 내가 정말로 Google 계정에서 로그 아웃되지 않았습니다. 소셜 로그인 링크를 클릭하면 암호 입력없이 사용자 영역으로 돌아옵니다.

allauth에서 로그 아웃하고 소셜 인증 토큰을 제거 할 수 있습니까? 로그 아웃 신호를 받고 토큰을 직접 찾고 삭제해야합니까?

답변

0

기본 제공되는 솔루션처럼 보입니다. "reauthenticate"값을 지정할 수있는 action 매개 변수가 있습니다.

myProject/templates/allauth/socialaccount/snippets/provider_list.html 

와 라 사회적 인증 HREF 라인에 action=reauthenticate"을 추가 :

{% load socialaccount %} 

{% get_providers as socialaccount_providers %} 

{% for provider in socialaccount_providers %} 
{% if provider.id == "openid" %} 
{% for brand in provider.get_brands %} 
<li> 
    <a title="{{brand.name}}" 
    class="socialaccount_provider {{provider.id}} {{brand.id}}" 
    href="{% provider_login_url provider.id openid=brand.openid_url process=process action="reauthenticate" %}" 
    >{{brand.name}}</a> 
</li> 
{% endfor %} 
{% endif %} 
<li> 
    <a title="{{provider.name}}" class="socialaccount_provider {{provider.id}}" 
    href="{% provider_login_url provider.id process=process scope=scope auth_params=auth_params %}">{{provider.name}}</a> 
</li> 
{% endfor %} 
이 물건에 새가되는 나는 파이썬/장고 방식을 추가 한하지만 난 템플릿을 편집 한 것을하지 긍정적이다

트릭을 수행하는 것으로 보입니다.