30 lines
828 B
Python
30 lines
828 B
Python
# Python imports
|
|
|
|
# Lib imports
|
|
from flask import request, render_template, flash, redirect, url_for
|
|
|
|
# App imports
|
|
from ... import app, oidc
|
|
from ...utils import MessageHandler # Get simple message processor
|
|
|
|
|
|
msgHandler = MessageHandler()
|
|
|
|
|
|
@app.route('/login', methods=['GET', 'POST'])
|
|
@oidc.require_login
|
|
def login():
|
|
return redirect("/")
|
|
|
|
|
|
@app.route('/logout', methods=['GET', 'POST'])
|
|
@oidc.require_login
|
|
def logout():
|
|
oidc.logout()
|
|
flash("Logged out successfully!", "success")
|
|
# NOTE: Need to redirect to logout on OIDC server to end session there too.
|
|
# If not, we can hit login url again and get same token until it expires.
|
|
return redirect( oidc.client_secrets.get('issuer')
|
|
+ '/protocol/openid-connect/logout?redirect_uri='
|
|
+ app.config['APP_REDIRECT_URI'])
|