Machen Sie RoleRightsSyncService vollständig selbstheilend auf jedem Boot

FeatureSecurityService
Verschifft
20. April 2026 um 20:23 UTC
Autor
Kamo
Ausschuss
3609afb

Das Hinzufügen oder Entfernen eines RoleRightType darf nie wieder laufen KamoInitializerService. syncAll() läuft jetzt drei Phasen auf jedem Start: 1. Heal-Beschränkungen - lassen Sie jede CHECK-Beschränkung auf jede Rechtsträgerin fallen Tabelle und stellen Sie sicher, dass die beiden upsert-erforderlichen einzigartigen Einschränkungen existieren. Hibernate backt Enum-Werte in CHECK Einschränkungen bei CREATE TABLE Zeit und aktualisiert sie nie, und @UniqueConstraint wirkt nur auf CREATE TABLE, so dass beide driften, wenn Enums entwickeln. @Aufgezählt bereits gültige Werte in der Java-Layer setzt sie auf. 2. Verwaiste Rechte löschen - DELETE WHERE right_type NOT IN (current enum) Über alle sechs rechtsgelagerten Tabellen: org_role_rights, **************** member_rights, member_rights_applied, job_title_rights, dept_rights. Griffe sowohl ORDINAL int und STRING enum-name Lagerung. 3. fehlende Rechte einfügen - unverändert; sich auf die einzigartigen Einschränkungen verlässt in Phase 1 sichergestellt. Idempotent - sicher zu wiederholen. Hinzufügen/Entfernen von Enum-Werten erfordert jetzt nur der Neustart von SecurityService.

Alle Änderungen

Wie, was Sie sehen Versand?

Jedes dieser Updates landet automatisch in Ihrem Arbeitsbereich. Starten Sie frei und beobachten Sie es Woche für Woche wachsen.

Free Forever startenPreisgestaltung anzeigen