从OAuth2注销 - Google App Engine / Python

时间:2017-12-15 10:25:28

标签: python google-app-engine oauth-2.0 google-api google-oauth

有很多关于如何使用OAuth2签署用户的文档,但我还没有找到任何文档,很容易签署用户。有谁知道我怎么做到这一点?我只是想从我的应用程序中签署用户,以便其他人可以登录。

以下是我的登录代码,如果有帮助的话:

import jinja2
import os
import webapp2

from apiclient.discovery import build
from oauth2client.contrib.appengine import OAuth2Decorator
from google.appengine.api import users


decorator = OAuth2Decorator(
    client_id='',
    client_secret='',
    scope='https://www.googleapis.com/auth/userinfo.email')

template_env = jinja2.Environment(
    loader=jinja2.FileSystemLoader(os.getcwd()))

class LoginHandler(webapp2.RequestHandler):
    @decorator.oauth_required
    def get(self):
        user = users.get_current_user()

        template = template_env.get_template('index.html')
        context = {
             'user': user,
        }

        self.response.out.write(template.render(context))

application = webapp2.WSGIApplication(
    [
     ('/login', LoginHandler),
     (decorator.callback_path, decorator.callback_handler())
    ],
    debug=True)

1 个答案:

答案 0 :(得分:1)

我认为您将身份验证(Open Id connect)与授权(Oauth2)混淆。 Oauth2授予​​您访问与验证用户无关的用户数据的权限。您永远不会注销Oauth2授权。

尽管如此,您可以撤消对用户数据的访问权限,然后系统会提示他们再次授予您访问权限。

set()

请参阅revoke token了解详情