from flask import has_request_context, g, current_app from werkzeug.local import LocalProxy from .claims import Audience current_user = LocalProxy(lambda: _get_user()) def _get_user(): if has_request_context() and not hasattr(g, "user"): current_app.auth_manager._load_user() return getattr(g, "user", None) def no_mfa_is_active(): return ( current_app.config.get("NO_MFA_ENABLED") and Audience(Audience.Values.no_mfa) in current_user.claims )