- Passwort-Reset
cd management
npm run reset-password -- admin "neues-passwort"
- Agent-Hardening
backend/.env unterstützt jetzt:
ALLOWED_MANAGEMENT_IPS="127.0.0.1,DEINE-MANAGEMENT-IP"
Wenn gesetzt, akzeptiert der Agent nur Requests von diesen IPs.
- Audit-Log
Management speichert Aktionen wie Login, Logout, Node-Änderungen, Schedule-Updates, Backup/Restore, Settings-Änderungen.
- Job-History
Management speichert gestartete Backup/Restore/Scheduler-Jobs mit Node, VM, Typ, Agent-Job-ID und Status.
- Operations-Seite
Neue UI-Seite Operations mit:
- Job History
- Audit Log
- systemd Templates
deploy/systemd/incus-backup-agent.service
deploy/systemd/incus-backup-management.service
- Deployment-Doku
docs/deployment.md
This commit is contained in:
1 parent
aae54167a1
commit
e32ebbc734
21 files changed
+417
-13
No files matched your search
@@ -1,5 +1,6 @@
|
||||
import { Router } from 'express';
|
||||
import { clearSessionCookie, currentSession, login, logout, setSessionCookie } from '../auth.js';
|
||||
import { createAuditEvent } from '../store.js';
|
||||
|
||||
export const authRouter = Router();
|
||||
|
||||
@@ -15,11 +16,25 @@ authRouter.post('/login', (req, res) => {
|
||||
return;
|
||||
}
|
||||
setSessionCookie(res, result.session);
|
||||
createAuditEvent({
|
||||
user: result.user,
|
||||
action: 'login',
|
||||
targetType: 'session',
|
||||
targetId: result.session.id,
|
||||
});
|
||||
res.json({ user: result.user });
|
||||
});
|
||||
|
||||
authRouter.post('/logout', (req, res) => {
|
||||
const session = currentSession(req);
|
||||
if (session) {
|
||||
createAuditEvent({
|
||||
user: session.user,
|
||||
action: 'logout',
|
||||
targetType: 'session',
|
||||
targetId: session.sessionId,
|
||||
});
|
||||
}
|
||||
logout(session?.sessionId);
|
||||
clearSessionCookie(res);
|
||||
res.json({ ok: true });
|
||||
|
||||
Reference in new issue
Block a user