Browse Source

fix: account check in runtime (#569)

tags/0.3.9
John Wang 2 years ago
parent
commit
24f3456990
No account linked to committer's email address
1 changed files with 6 additions and 1 deletions
  1. 6
    1
      api/app.py

+ 6
- 1
api/app.py View File

@@ -2,6 +2,8 @@
import os
from datetime import datetime

from werkzeug.exceptions import Forbidden

if not os.environ.get("DEBUG") or os.environ.get("DEBUG").lower() != 'true':
from gevent import monkey
monkey.patch_all()
@@ -27,7 +29,7 @@ from events import event_handlers
import core
from config import Config, CloudEditionConfig
from commands import register_commands
from models.account import TenantAccountJoin
from models.account import TenantAccountJoin, AccountStatus
from models.model import Account, EndUser, App

import warnings
@@ -101,6 +103,9 @@ def load_user(user_id):
account = db.session.query(Account).filter(Account.id == account_id).first()

if account:
if account.status == AccountStatus.BANNED.value or account.status == AccountStatus.CLOSED.value:
raise Forbidden('Account is banned or closed.')

workspace_id = session.get('workspace_id')
if workspace_id:
tenant_account_join = db.session.query(TenantAccountJoin).filter(

Loading…
Cancel
Save