SAFweb2-Release 2.1.17.2

release note 2.1.16

2025-08-15

Schnellübersicht

  • Config
  • Core
    • Dark-Mode
    • Berechtigungssystem
      • Rechte
      • Gruppen
      • Rollen
      • Anwender

Config

.env

Name bzw. Login des Master-Admins in Config gelegt. Die Datei .env muss um diesen Eintrag erweitert werden:

APP_MASTER_ADMIN=safadmin

Core

Dark-Mode

Im Darkmode wird automatisch die Anwenderschnittstelle in den Dark-Modus geschaltet. Damit werden dunkte Primärfarben verwendet, in Kontrast zu helleren Sekundärfarben.

Alle Inhalte sind somit auch im Dark-Modus lesbar, wenn dieser im Betriebssystem aktiviert wurde.

Berechtigungssystem

Das Berechtigungssystem baut auf mehrere Ebenen (Layern) auf.

  • Rechte
  • Gruppen
  • Rollen
  • Anwender

Die Rechte sind kumulativ. Das bedeutet, wird ein Anwender neu angelegt und ist noch keiner Rolle zugeordnet, darf dieser User zunächst nichts. Für alle Programmteile auf die der Anwender Zugriff haben soll, muss eine entsprechende Rolle zugeordnet werden.

Struktur

Ebene 1 - Rechte

Alle Zugriffsrechte (Navigation und Datenbankmodelle) werden in den Rechten gesammelt. Es stehen Funktionen zur Verfügung, die ein automatisiertes Zusammentragen aller verfügbaren Rechte ermöglicht.

Ebene 2 - Gruppen

Es können jetzt frei beliebige Gruppen gebildet werden, die beliebige Rechte beinhalten. Es bietet sich an, funktionsorientierte Gruppen zu erstellen. Beispielsweise kann es ein Gruppe MIS Ekgeben, die nru Zugriff auf MIS Bereich EK hat. Alle anderen Module sind nicht erlaubt.

Möglich sind auch funktionale Gruppen aus Anwender-Sicht. So könnten alle Rechte für die EK-Leitung in ein Gruppe gelegt werden.

Am Ende ist es eine Geschmacksache.

Ebene 3 - Rollen

Rollen dienen dazu, Funktionsgruppen zu bilden. Ein Beispiel ist die Rolle Geschäftsleitung oder Administrator, sowie Einkäufer oder Verkäufer. Die Rollen orientieren im allgemeinen an bestimmte Aufgabenbereiche im Unternehmen.
Und wie im realen Leben, kann am Ende eine Person mehrere Rollen inne haben. Und so ist auch diese Ebene gedacht.

Ebene 4 - Anwender

Jedem Anwender können jetzt beliebige Rollen zugeordnet werden. Dadurch summieren sich die Berechtigungen auf. Ist ein Anwender in der Rolle Einkaufsleiter und Administrator Personen, dann darf er alles was beiden Rollen erlaubt ist.
Das wiederum hängt davon ab, welche Gruppen der jeweiligen Rolle zugeordnet ist.

Technische Ausführung

Die erste Ebene sind die Rechte innerhalb der Navigation. Alle Menu-Ebenen sind mit Rechten versehen. Jede Menu-Ebene wird durch eine URL repräsentiert. Die gesamte Menu-Struktur ist in einer Konfigurationsdatei je Modul hinterlegt.

Beispiel-Ausschnitt:

'stat' => [
    'meta' => [
        'name' => 'Auswertungen',
        'desc' => 'Statistische Auswertungen für den Einkauf/Verkauf und Bestandsentwicklungen.',
        'link' => '/mis/stat',                                  <= URL
        'permission' => true,
        'icon' => 'fa-chart-bar',
    ],
    'functions' => [
        'ek' => [
            'meta' => [
                'name' => 'Einkauf',
                'desc' => 'Statistische Daten der Beschaffung',
                'link' => '/mis/stat/ek',                       <= URL
                'permission' => true,
                'icon' => 'fa-shopping-cart',
                'disabled' => false,
            ],
...

Die mit link gekennzeichneten Einträge sind die URL die in der Anwendung verwendet werden um an diese Ressource zu gelangen. Ist der Kenner permission auf true gesetzt, wird beim scannen der Menus dieser Link als Berechtigungsschlüssel verwendet.

Menu - Rechte

Das ist auch in der URL des Browsers wieder zu erkennen:

http://safweb2.test/mis/stat/ek

Soll der Anwender später die Berechtigung haben, auf diese URL zugreifen zu können, muss er einer Rolle angehören, die dieses Recht besitzt.