diff --git a/oslo/messaging/_drivers/common.py b/oslo/messaging/_drivers/common.py index 4d0b7a1e7..fa21a437d 100644 --- a/oslo/messaging/_drivers/common.py +++ b/oslo/messaging/_drivers/common.py @@ -27,6 +27,7 @@ from oslo import messaging from oslo.messaging._i18n import _ from oslo.messaging import _utils as utils from oslo.serialization import jsonutils +from oslo.utils import strutils LOG = logging.getLogger(__name__) @@ -70,8 +71,6 @@ _MESSAGE_KEY = 'oslo.message' _REMOTE_POSTFIX = '_Remote' -_SANITIZE = ['_context_auth_token', 'auth_token', 'new_pass'] - class RPCException(Exception): msg_fmt = _("An unknown RPC related exception occurred.") @@ -162,22 +161,9 @@ class Connection(object): raise NotImplementedError() -def _fix_passwords(d): - """Sanitizes the password fields in the dictionary.""" - for k in six.iterkeys(d): - if k.lower().find('password') != -1: - d[k] = '' - elif k.lower() in _SANITIZE: - d[k] = '' - elif isinstance(d[k], dict): - _fix_passwords(d[k]) - - return d - - def _safe_log(log_func, msg, msg_data): """Sanitizes the msg_data field before logging.""" - return log_func(msg, _fix_passwords(copy.deepcopy(msg_data))) + return log_func(msg, strutils.mask_password(six.text_type(msg_data))) def serialize_remote_exception(failure_info, log_failure=True):