Flask-Security と MySQL を使用する Flask アプリがあります。残念ながら、Flask-Security はグループ/マルチテナント管理を提供していません ( https://github.com/mattupstate/flask-security/issues/285 )。
以下を実装したいと思います。
- ログイン時に、ユーザーは自分のログイン資格情報を入力します。
- ユーザー DB を照会して、ユーザーがいくつのグループ (管理、経理、営業など) に属しているかを確認します。
- ユーザーが複数のグループに属している場合は、ポップアップが表示され、ユーザーが属しているグループが一覧表示されます。
- グループを選択すると、ユーザーがログインし、グローバル変数 (tenant_id または group_id) がユーザーのセッションに設定されます。このグローバル変数を使用して、ユーザーによる DB 検索を事前にフィルター処理できます。
手順 2 と 4 を実装する方法がわかりません。このような実装に Flask g.object ( http://flask.pocoo.org/docs/0.10/api/#flask.g ) を使用できますか?