update authorize user group
This commit is contained in:
parent
db53a99881
commit
ebcb30f0ba
@ -23,14 +23,13 @@ from zephir.lib_zephir import flushed_input
|
||||
|
||||
def display_help():
|
||||
print("Autorise une connexion ssh d'un utilisateur sur un groupe de serveur")
|
||||
print("{} [numero du groupe] [--user utilisateur] [--key chemin_de_la_clé]".format(sys.argv[0]))
|
||||
print("--key : si ce paramètre est défini, la clé sera envoyé aux serveurs")
|
||||
print("{} [numero du groupe] [--user utilisateur]".format(sys.argv[0]))
|
||||
|
||||
def argparser():
|
||||
# récupère l'ID du groupe
|
||||
arglen = len(sys.argv)
|
||||
if arglen == 1:
|
||||
return None, None, None
|
||||
return None, None
|
||||
if sys.argv[1] in ['-h', '--help']:
|
||||
display_help()
|
||||
sys.exit(0)
|
||||
@ -43,18 +42,14 @@ def argparser():
|
||||
|
||||
if sys.argv[2] in ['-u', '--user']:
|
||||
user = sys.argv[3]
|
||||
return server_id, user, None
|
||||
return group_id, user
|
||||
|
||||
if sys.argv[4] in ['-k', '--key']:
|
||||
keypath = sys.argv[5]
|
||||
return server_id, user, keypath
|
||||
|
||||
return group_id, None, None
|
||||
return group_id, None
|
||||
|
||||
|
||||
def main():
|
||||
# import des fonctions communes de Zéphir client
|
||||
group_id, user, keypath = argparser()
|
||||
group_id, user = argparser()
|
||||
|
||||
authentified, proxy = get_pwd(adresse_zephir, 7080)
|
||||
if authentified == False:
|
||||
@ -94,29 +89,10 @@ def main():
|
||||
if user is None:
|
||||
user = flushed_input("Utilisateur : ")
|
||||
|
||||
if keypath is not None:
|
||||
keyssh = None
|
||||
with open(keypath) as f:
|
||||
keyssh = f.read()
|
||||
|
||||
clef_ssh = base64.encodestring(keyssh).decode()
|
||||
os.chdir("/etc/postgresql/")
|
||||
cmd="""sudo -u postgres psql -c "update users set cle='{}' where login='{}';" zephir""".format(clef_ssh,user)
|
||||
output = os.popen(cmd)
|
||||
res = output.read().strip()
|
||||
output.close()
|
||||
|
||||
if res == "UPDATE 1":
|
||||
print('Clé ssh de utilisateur {} mise à jour'.format(user))
|
||||
else:
|
||||
print("Erreur : ", str(res))
|
||||
sys.exit(1)
|
||||
|
||||
ret = proxy.serveurs.authorize_user(user,liste_serveurs)
|
||||
|
||||
print('Utilisateur {} autorisé à accéder en ssh aux serveurs {}'.format(user, liste_serveurs))
|
||||
|
||||
|
||||
def make_group():
|
||||
cx_pool = CxPool()
|
||||
cu = cx_pool.create()
|
||||
|
@ -103,10 +103,10 @@ def main():
|
||||
list_vars = params[1][3]
|
||||
for var in list_vars:
|
||||
print(' - ' + var)
|
||||
varc = raw_input("Variable à modifier : ")
|
||||
varc = flushed_input("Variable à modifier : ")
|
||||
|
||||
if valvar is None :
|
||||
valvar = raw_input("Valeur de la variable (séparateur |): ")
|
||||
valvar = flushed_input("Valeur de la variable (séparateur |): ")
|
||||
ret = proxy.serveurs.set_groupe_var(liste_serveurs, varc, valvar, False)
|
||||
# on affiche les erreurs si nécessaire
|
||||
if ret[1]:
|
||||
|
Loading…
Reference in New Issue
Block a user