diff --git a/keystone/server/flask/common.py b/keystone/server/flask/common.py index bb1d351daa..49a806913c 100644 --- a/keystone/server/flask/common.py +++ b/keystone/server/flask/common.py @@ -20,7 +20,6 @@ import wsgiref.util import flask from flask import blueprints -from flask import g import flask_restful from oslo_log import log import six @@ -123,7 +122,7 @@ def construct_json_home_data(rel, status=json_home.Status.STABLE, def _initialize_rbac_enforcement_check(): - setattr(g, enforcer._ENFORCEMENT_CHECK_ATTR, False) + setattr(flask.g, enforcer._ENFORCEMENT_CHECK_ATTR, False) def _assert_rbac_enforcement_called(resp): @@ -132,6 +131,7 @@ def _assert_rbac_enforcement_called(resp): msg = ('PROGRAMMING ERROR: enforcement (`keystone.common.rbac_enforcer.' 'enforcer.RBACKEnforcer.enforce_call()`) has not been called; API ' 'is unenforced.') + g = flask.g assert getattr(g, enforcer._ENFORCEMENT_CHECK_ATTR, False), msg # nosec return resp @@ -421,7 +421,7 @@ class APIBase(object): """ @functools.wraps(f) def wrapper(*args, **kwargs): - setattr(g, enforcer._ENFORCEMENT_CHECK_ATTR, True) + setattr(flask.g, enforcer._ENFORCEMENT_CHECK_ATTR, True) return f(*args, **kwargs) return wrapper diff --git a/keystone/tests/unit/common/test_rbac_enforcer.py b/keystone/tests/unit/common/test_rbac_enforcer.py index e988f20792..d7b3469474 100644 --- a/keystone/tests/unit/common/test_rbac_enforcer.py +++ b/keystone/tests/unit/common/test_rbac_enforcer.py @@ -15,7 +15,6 @@ import uuid import fixtures import flask from flask import blueprints -from flask import g import flask_restful import mock from oslo_policy import policy @@ -389,7 +388,7 @@ class TestRBACEnforcerRest(_TestRBACEnforcerBase): with self.test_client() as c: c.get('%s' % self.url_prefix) self.assertEqual( - action, getattr(g, self.enforcer.ACTION_STORE_ATTR)) + action, getattr(flask.g, self.enforcer.ACTION_STORE_ATTR)) def test_policy_enforcer_action_invalid_action_decorator(self): # If the "action" is not a registered policy enforcement point, check