Files
lrc-backend/auth/oidc.py
2019-03-21 16:17:25 +01:00

32 lines
860 B
Python

# Copyright (c) 2019. Tobias Kurze
"""
OIDC login auth module
"""
import flask
from flask import jsonify
from flask_pyoidc.flask_pyoidc import OIDCAuthentication
from flask_pyoidc.user_session import UserSession
from .import auth_bp
from .oidc_config import PROVIDER_NAME, OIDC_PROVIDERS
def oidc_auth_default_provider(self):
return self.oidc_auth_orig(PROVIDER_NAME)
OIDCAuthentication.oidc_auth_orig = OIDCAuthentication.oidc_auth
OIDCAuthentication.oidc_auth = oidc_auth_default_provider
oidc_auth = OIDCAuthentication(OIDC_PROVIDERS)
@auth_bp.route('/oidc', methods=['GET', 'POST'])
@oidc_auth.oidc_auth()
def oidc():
pass
user_session = UserSession(flask.session)
access_token = user_session.access_token
#login_user(user)
return jsonify(id_token=flask.session['id_token'], access_token=flask.session['access_token'])