refactor(security): improve logging format and argument handling
This commit is contained in:
parent
92597a1143
commit
8a22e285df
1 changed files with 25 additions and 24 deletions
|
|
@ -100,25 +100,25 @@ async def list_swagger_users():
|
||||||
logger.info("🔭 Aucun utilisateur Swagger")
|
logger.info("🔭 Aucun utilisateur Swagger")
|
||||||
return
|
return
|
||||||
|
|
||||||
logger.info(f"👥 {len(users)} utilisateur(s) Swagger:\n")
|
logger.info("👥 {} utilisateur(s) Swagger:\n".format(len(users)))
|
||||||
for user in users:
|
for user in users:
|
||||||
status = "ACTIF" if user.is_active else "NON ACTIF"
|
status = "ACTIF" if user.is_active else "NON ACTIF"
|
||||||
logger.info(f" {status} {user.username}")
|
logger.info(" {} {}".format(status, user.username))
|
||||||
logger.info(f" Nom: {user.full_name}")
|
logger.info("Nom: {}".format(user.full_name))
|
||||||
logger.info(f" Créé: {user.created_at}")
|
logger.info("Créé: {}".format(user.created_at))
|
||||||
logger.info(f" Dernière connexion: {user.last_login or 'Jamais'}")
|
logger.info(" Dernière connexion: {}".format(user.last_login or "Jamais"))
|
||||||
|
|
||||||
if user.allowed_tags:
|
if user.allowed_tags:
|
||||||
try:
|
try:
|
||||||
tags = json.loads(user.allowed_tags)
|
tags = json.loads(user.allowed_tags)
|
||||||
if tags:
|
if tags:
|
||||||
logger.info(f" Tags autorisés: {', '.join(tags)}")
|
logger.info("Tags autorisés: {}".format(", ".join(tags)))
|
||||||
else:
|
else:
|
||||||
logger.info(" Tags autorisés: Tous (admin)")
|
logger.info("Tags autorisés: Tous (admin)")
|
||||||
except json.JSONDecodeError:
|
except json.JSONDecodeError:
|
||||||
logger.info(" Tags: Erreur format")
|
logger.info("Tags: Erreur format")
|
||||||
else:
|
else:
|
||||||
logger.info(" Tags autorisés: Tous (admin)")
|
logger.info("Tags autorisés: Tous (admin)")
|
||||||
|
|
||||||
logger.info("")
|
logger.info("")
|
||||||
|
|
||||||
|
|
@ -198,7 +198,7 @@ async def list_api_keys():
|
||||||
logger.info("🔭 Aucune clé API")
|
logger.info("🔭 Aucune clé API")
|
||||||
return
|
return
|
||||||
|
|
||||||
logger.info(f"🔑 {len(keys)} clé(s) API:\n")
|
logger.info("🔑 {} clé(s) API:\n".format(len(keys)))
|
||||||
|
|
||||||
for key in keys:
|
for key in keys:
|
||||||
is_valid = key.is_active and (
|
is_valid = key.is_active and (
|
||||||
|
|
@ -225,7 +225,7 @@ async def list_api_keys():
|
||||||
except Exception:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
logger.info(" Endpoints: Tous")
|
logger.info("Endpoints: Tous")
|
||||||
logger.info("")
|
logger.info("")
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -303,11 +303,12 @@ Exemples:
|
||||||
add_p = swagger_sub.add_parser("add", help="Ajouter utilisateur")
|
add_p = swagger_sub.add_parser("add", help="Ajouter utilisateur")
|
||||||
add_p.add_argument("username", help="Nom d'utilisateur")
|
add_p.add_argument("username", help="Nom d'utilisateur")
|
||||||
add_p.add_argument("password", help="Mot de passe")
|
add_p.add_argument("password", help="Mot de passe")
|
||||||
add_p.add_argument("--full-name", help="Nom complet")
|
add_p.add_argument("--full-name", help="Nom complet", default=None)
|
||||||
add_p.add_argument(
|
add_p.add_argument(
|
||||||
"--tags",
|
"--tags",
|
||||||
nargs="*",
|
nargs="+", # Au moins 1 tag requis SI spécifié
|
||||||
help="Tags OpenAPI autorisés (ex. Clients Devis Authentication)",
|
help="Tags OpenAPI autorisés (ex: Clients Devis). Vide = admin complet",
|
||||||
|
default=None,
|
||||||
)
|
)
|
||||||
|
|
||||||
swagger_sub.add_parser("list", help="Lister utilisateurs")
|
swagger_sub.add_parser("list", help="Lister utilisateurs")
|
||||||
|
|
@ -341,13 +342,13 @@ Exemples:
|
||||||
|
|
||||||
if args.command == "swagger":
|
if args.command == "swagger":
|
||||||
if args.swagger_command == "add":
|
if args.swagger_command == "add":
|
||||||
await add_swagger_user(
|
tags = args.tags if args.tags is not None else None
|
||||||
args.username, args.password, args.full_name, args.tags
|
await add_swagger_user(args.username, args.password, args.full_name, tags)
|
||||||
)
|
|
||||||
elif args.swagger_command == "list":
|
elif args.swagger_command == "list":
|
||||||
await list_swagger_users()
|
await list_swagger_users()
|
||||||
elif args.swagger_command == "delete":
|
elif args.swagger_command == "delete":
|
||||||
await delete_swagger_user(args.username, args.tags)
|
tags = args.tags if args.tags is not None else None
|
||||||
|
await delete_swagger_user(args.username, tags)
|
||||||
else:
|
else:
|
||||||
swagger_parser.print_help()
|
swagger_parser.print_help()
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue