diff --git a/confluent_server/confluent/config/configmanager.py b/confluent_server/confluent/config/configmanager.py index b1c4073d..8b9b07c7 100644 --- a/confluent_server/confluent/config/configmanager.py +++ b/confluent_server/confluent/config/configmanager.py @@ -113,6 +113,13 @@ _attraliases = { } _validroles = ('Administrator', 'Operator', 'Monitor') + +def attrib_supports_expression(attrib): + attrib = _attraliases.get(attrib, attrib) + if attrib.startswith('secret.') or attrib.startswith('crypted.'): + return False + + def _mkpath(pathname): try: os.makedirs(pathname) diff --git a/confluent_server/confluent/messages.py b/confluent_server/confluent/messages.py index c1de838f..71dd524f 100644 --- a/confluent_server/confluent/messages.py +++ b/confluent_server/confluent/messages.py @@ -674,6 +674,8 @@ class InputAttributes(ConfluentMessage): if nodes is None: self.attribs = inputdata for attrib in self.attribs: + if not cfm.attrib_supports_expression(attrib): + continue if type(self.attribs[attrib]) in (bytes, unicode): try: # ok, try to use format against the string