refactor security to Flask-Security - Part 1

This commit is contained in:
Josako
2024-04-25 23:25:38 +02:00
parent dc235b5d2c
commit a37b551e53
15 changed files with 324 additions and 174 deletions

View File

@@ -1,12 +1,16 @@
import os
from flask import Flask
from .extensions import db, migrate, bcrypt, bootstrap, jwt
from .models.user import User, Tenant
from flask_security import SQLAlchemyUserDatastore
from werkzeug.middleware.proxy_fix import ProxyFix
from .extensions import db, migrate, bootstrap, security, mail, login_manager
from .models.user import User, Tenant, Role
from .models.document import Document, DocumentLanguage, DocumentVersion
def create_app(config_file=None):
app = Flask(__name__)
app.wsgi_app = ProxyFix(app.wsgi_app, x_for=1)
if config_file is None:
app.config.from_object('config.DevConfig')
@@ -19,6 +23,10 @@ def create_app(config_file=None):
pass
register_extensions(app)
# Setup Flask-Security-Too
user_datastore = SQLAlchemyUserDatastore(db, User, Role)
security.init_app(app, user_datastore)
register_blueprints(app)
print(app.config.get('SQLALCHEMY_DATABASE_URI'))
@@ -28,11 +36,12 @@ def create_app(config_file=None):
def register_extensions(app):
db.init_app(app)
migrate.init_app(app, db)
bcrypt.init_app(app)
bootstrap.init_app(app)
jwt.init_app(app)
mail.init_app(app)
login_manager.init_app(app)
# Register Blueprints
def register_blueprints(app):
from .views.user_views import user_bp
app.register_blueprint(user_bp)