Flask の認証系のモジュール

Flask でログインして認証したい。


公式のドキュメントには Login/Logout のサンプルが載ってる。
Blueprints and Views — Flask 1.0.2 documentation
ユーザ名とパスワードが一致したらセッション変数のフラグを立てる。
これとデコレータを使った例を使ったら簡易なログインチェックはできそう。
View Decorators — Flask 1.0.2 documentation


もう少し認証に特化したものが無いか探してみた。
ググると 2 つほどモジュールが見つかった。
Flask-Login's Documention has moved... You will be redirected automatically.
Flask Principal — Flask Principal 0.4.0 documentation


Flask-Login は権限管理というよりログインに特化したものみたい。
サンプルプログラムは動作したが、自分のアプリケーションに組み込んでみたら動かなかった。
Terse Words: Flask Extensions For Authorization with Examples
# ↑サンプルプログラムがある。


Flask-Principal の方は権限管理もできるみたい。
Role で admin や member といったものを設定して、ログイン時に何の権限でログインをしたかを設定する。
# 変更の通知にシグナルを送信している


Flask-Principal の方はサンプルの通り組み込んでみたら上手く動いたのでこっちを使ってみる。