Don't attempt to escalate designate-manage privileges

Remove code which allowed designate-manage to attempt to escalate
privileges so that configuration files can be read by users who
normally wouldn't have access, but do have sudo access.

Simpler version of [1].

[1] I03063d2af14015e6506f1b6e958f5ff219aa4a87
Closes-Bug: 1611171

Change-Id: I013754da27e9dd13493bee1abfada3fbc2a004c0
This commit is contained in:
Jens Harbott 2017-10-20 08:34:18 +00:00
parent 30ffe04b46
commit 440a67cab1
1 changed files with 2 additions and 17 deletions

View File

@ -15,7 +15,6 @@
# under the License.
#
# Copied: designate
import os
import sys
import eventlet
@ -27,7 +26,6 @@ from stevedore.extension import ExtensionManager
from designate import hookpoints
from designate import utils
from designate import version
from designate.i18n import _
eventlet.monkey_patch(os=False)
@ -106,21 +104,8 @@ def fetch_func_args(func):
def main():
CONF.register_cli_opt(category_opt)
try:
utils.read_config('designate', sys.argv)
logging.setup(CONF, 'designate')
except cfg.ConfigFilesNotFoundError:
cfgfile = CONF.config_file[-1] if CONF.config_file else None
if cfgfile and not os.access(cfgfile, os.R_OK):
st = os.stat(cfgfile)
print(_("Could not read %s. Re-running with sudo") % cfgfile)
try:
os.execvp('sudo', ['sudo', '-u', '#%s' % st.st_uid] + sys.argv)
except Exception:
print(_('sudo failed, continuing as if nothing happened'))
print(_('Please re-run designate-manage as root.'))
sys.exit(2)
utils.read_config('designate', sys.argv)
logging.setup(CONF, 'designate')
gmr.TextGuruMeditation.setup_autorun(version)