From 8fe18393e0a3ff27e999a069207d48f782cca9f8 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Thu, 20 Mar 2014 17:54:35 -0400 Subject: [PATCH] Add a default admin user at install time Signed-off-by: Simo Sorce --- ipsilon/install/server.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ipsilon/install/server.py b/ipsilon/install/server.py index 4c0aef7..4ae0c8f 100755 --- a/ipsilon/install/server.py +++ b/ipsilon/install/server.py @@ -19,6 +19,7 @@ from ipsilon.login.common import LoginMgrsInstall from ipsilon.providers.common import ProvidersInstall +from ipsilon.util.data import Store import argparse import cherrypy import logging @@ -98,6 +99,13 @@ def install(plugins, args): if os.path.exists(admin_db): shutil.move(admin_db, '%s.backup.%s' % (admin_db, now)) + # Rebuild user db + users_db = cherrypy.config['user.prefs.db'] + if os.path.exists(users_db): + shutil.move(users_db, '%s.backup.%s' % (users_db, now)) + db = Store() + db.save_user_preferences(args['admin_user'], {'is_admin': 1}) + logger.info('Configuring login managers') for plugin_name in args['lm_order']: plugin = plugins['Login Managers'][plugin_name] @@ -132,6 +140,8 @@ def parse_args(plugins): help="Machine's fully qualified host name") parser.add_argument('--system-user', default='ipsilon', help="User account used to run the server") + parser.add_argument('--admin-user', default='admin', + help="User account that is assigned admin privileges") parser.add_argument('--ipa', choices=['yes', 'no'], default='yes', help='Detect and use an IPA server for authentication') parser.add_argument('--uninstall', action='store_true', -- 2.20.1