Vue d'ensemble

Flask-Login 0.6, publié le 1er mai 2022, supporte Flask 2.x et améliore la protection des sessions.

Fonctionnalités principales

Support Flask 2.x

Flask-Login 0.6 est compatible avec Flask 2.x et ses nouvelles API, incluant le support des vues asynchrones.

python
from flask import Flask
from flask_login import LoginManager, UserMixin, login_required

app = Flask(__name__)
login_manager = LoginManager(app)

class User(UserMixin):
    def __init__(self, id):
        self.id = id

@login_manager.user_loader
def load_user(user_id):
    return User(user_id)

@app.route('/profil')
@login_required
def profil():
    return 'Page protégée'

Protection de session

La protection des sessions est renforcée avec de meilleures vérifications de l'adresse IP et du user-agent pour détecter le vol de session.

python
from flask import Flask
from flask_login import LoginManager

app = Flask(__name__)
app.config['SECRET_KEY'] = 'ma-clé-secrète'

login_manager = LoginManager(app)
login_manager.session_protection = 'strong'  # ou 'basic'
login_manager.login_view = 'login'

Sources