Social connections powered by Authlib. This library is a part of Authlib project. It works well with Authlib v0.14.3+.
from flask import Flask from authlib.integrations.flask_client import OAuth from loginpass import create_flask_blueprint from loginpass import Twitter, GitHub, Google app = Flask(__name__) oauth = OAuth(app) def handle_authorize(remote, token, user_info): if token: save_token(remote.name, token) if user_info: save_user(user_info) return user_page raise some_error backends = [Twitter, GitHub, Google] bp = create_flask_blueprint(backends, oauth, handle_authorize) app.register_blueprint(bp, url_prefix='')
Authlib Loginpass contains lots of connections (see below), every connection has a
profile() method which returns the same format of user info. It supports OAuth 1,
OAuth 2 and OpenID Connect for now.
The user info that
profile() returns is standardized with OpenID Connect UserInfo
not something made by me.
Connections that Authlib Loginpass contains:
- Ory Hydra
Most of the time, you don't have to use loginpass, you can just register a remote app with Authlib's framework integrations. Checkout our demo on OAuth clients for Flask, Django, Starlette and FastAPI:
Loginpass is a group member of Authlib, it is licensed under BSD. Authlib commercial license applies to this project too, you can get a commercial license at Authlib Commercial Plans.