超级简单的openid和google federated auth for flask应用程序。
Flask-GoogleAuth的Python项目详细描述
这是torando.auth的一个部分端口,用于烧瓶。
它很小,自包含,不使用任何文件系统操作。 内部应用程序的greate。
作者亚历山大·萨尔塔诺夫,灵感来自肯尼斯·雷茨。
用法
google联合登录的示例用法。
路由/login/和/logout/将自动提供。
需要来自给定谷歌应用程序域的帐户才能使用Flask应用程序:
from flask import Flask, g from flask_googleauth import GoogleFederated # Setup Flask app = Flask(__name__) app.secret_key = "random secret key" # Setup Google Federated Auth auth = GoogleFederated("mokote.com", app) @app.route("/") @auth.required def secret(): # Once user is authenticated, his name and email are accessible as # g.user.name and g.user.email. return "You have rights to be here, %s (%s)" % (g.user.name, g.user.email) app.run()
如果你想用普通的google openid认证你的用户,你应该导入并使用GoogleAuth,而不是GoogleFederated:
auth = GoogleAuth(app)
通过在auth对象上设置force_auth_on_every_request,可以强制对所有请求进行身份验证:
auth.force_auth_on_every_request = True
安装
要安装烧瓶,请执行以下操作:
pip install flask-googleauth
先决条件
确保您的google应用程序域在“高级工具”—“使用openid联合登录”下被启用为openid提供者。