Files
codexpi/scripts/revoke-sessions.py

34 lines
839 B
Python
Raw Permalink Normal View History

2026-11-14 20:23:59 +01:00
#!/usr/bin/env python3
from __future__ import annotations
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_ui.settings")
import django
django.setup()
from django.contrib.sessions.models import Session
from codexpi.security_audit import SecurityAuditLogger
from django.conf import settings
def main() -> int:
count = Session.objects.count()
answer = input(f"Révoquer les {count} session(s) Django CodexPi ? Tapez REVOKE: ")
if answer != "REVOKE":
print("Annulé.")
return 1
Session.objects.all().delete()
SecurityAuditLogger(settings.DATA_DIR / "security.log").log(
"session.all_revoked", "local-cli", outcome="revoked", reason=f"count:{count}"
)
print(f"{count} session(s) révoquée(s).")
return 0
if __name__ == "__main__":
raise SystemExit(main())