summaryrefslogtreecommitdiffstats
path: root/openstack
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-08-08 01:27:39 +0000
committerGerrit Code Review <review@openstack.org>2013-08-08 01:27:39 +0000
commit5d1793321503ce630ff1de05db32d17915bc9d29 (patch)
tree48365c9b3215fc85e4359a25dd5965f215f7c142 /openstack
parent5998bca22bcd03b1c4f990b7cf83babc07694e6f (diff)
parent3f2f70e0785e11434f6f863ce8eacc1b0ef1782d (diff)
downloadoslo-5d1793321503ce630ff1de05db32d17915bc9d29.tar.gz
oslo-5d1793321503ce630ff1de05db32d17915bc9d29.tar.xz
oslo-5d1793321503ce630ff1de05db32d17915bc9d29.zip
Merge "Helper function to sanitize db url credentials"
Diffstat (limited to 'openstack')
-rw-r--r--openstack/common/db/sqlalchemy/session.py6
-rw-r--r--openstack/common/db/sqlalchemy/utils.py11
2 files changed, 13 insertions, 4 deletions
diff --git a/openstack/common/db/sqlalchemy/session.py b/openstack/common/db/sqlalchemy/session.py
index e83009c..236136e 100644
--- a/openstack/common/db/sqlalchemy/session.py
+++ b/openstack/common/db/sqlalchemy/session.py
@@ -279,13 +279,11 @@ database_opts = [
deprecated_opts=[cfg.DeprecatedOpt('sql_connection',
group='DEFAULT'),
cfg.DeprecatedOpt('sql_connection',
- group='DATABASE')],
- secret=True),
+ group='DATABASE')]),
cfg.StrOpt('slave_connection',
default='',
help='The SQLAlchemy connection string used to connect to the '
- 'slave database',
- secret=True),
+ 'slave database'),
cfg.IntOpt('idle_timeout',
default=3600,
deprecated_opts=[cfg.DeprecatedOpt('sql_idle_timeout',
diff --git a/openstack/common/db/sqlalchemy/utils.py b/openstack/common/db/sqlalchemy/utils.py
index caf5569..64edec2 100644
--- a/openstack/common/db/sqlalchemy/utils.py
+++ b/openstack/common/db/sqlalchemy/utils.py
@@ -18,6 +18,8 @@
# License for the specific language governing permissions and limitations
# under the License.
+import re
+
from migrate.changeset import UniqueConstraint
import sqlalchemy
from sqlalchemy import Boolean
@@ -45,6 +47,15 @@ from openstack.common import timeutils
LOG = logging.getLogger(__name__)
+_DBURL_REGEX = re.compile(r"[^:]+://([^:]+):([^@]+)@.+")
+
+
+def sanitize_db_url(url):
+ match = _DBURL_REGEX.match(url)
+ if match:
+ return '%s****:****%s' % (url[:match.start(1)], url[match.end(2):])
+ return url
+
class InvalidSortKey(Exception):
message = _("Sort key supplied was not valid.")