Task 161243

 
Seit der Einführung des Hybridsmodelles griffen sämtliche Benutzer mit nur einem einzelnen Login auf die Datenbankumgebung von pcjob.net zu. Diese Zugangsdaten waren im Programm abgelegt und so konnte das Programm rasch verteilt werden, ohne dass spezifische Benutzer auf der Datenkbank erfasst werden mussten. Die gesamte Sicherheitsstruktur von pcjob.net geschah Programmintern, sowohl auf der Datenbank wie auch und hauptsächlich im Programmcode.
 
Mit den zunehmenden Angriffen auf Firmen und Softwaresystemen sind auch wir daran, verschiedene Angriffspunkte zu schliessen und allfällige erfolgreiche Hacks sowohl zu erkennen wie deren Schaden möglichst begrenzen zu können.
 
Mit diesem Release haben wir eine umfassende Neuprogrammierung der Security durchgezogen. Das grundlegende Ziel, neben der Sicherheit, war nach wie  vor die einfache Verteilung der Software ohne weitere Installationsarbeiten.
 

Der grundsätzliche Loginablauf sieh wie folgt aus.

  • Mit einem spezifischen und sehr eingeschränkten Datenbankbenutzers werden die Anmeldeinformationen des Anwenders auf der Datenbank geprüft.
  • Dieser Benutzer hat lediglich Zugriff auf die Benutzertabelle und 2 Prozeduren und kann sonst nichts bewirken. Somit sind Angriffe über diesen Benutzer, sollten die Anmeldeinformationen bekannt werden, praktisch nicht machbar, gerade auch im Bereich SQL Injection.
  • Für jeden pcjob.net Benutzer sind Datenbank-Anmeldedaten verschlüsselt gespeichert. Dieser können auf Ebene Firma (Regelfalls), Filiale oder Benutzer hinterlegt werden, um grösstmögliche Flexibilität zu gewährleisten.
  • Diesem Benutzer sind jeweils nur die Datenbanken zugewiesen, auf welcher tatsächlich zugreifen darf, in der Regel nur diejeingen der eigenen Firma, Ausnahmen sind für Treuhänder vorgesehen, welche mehrere Mandate betreuen sowie für den System User.
  • Diese Anmeldedaten werden dem Programm zurückgeliefert und ab diesem Augenblick für sämtliche Zugriffe auf pcjob.net verwendet.
  • Die Anmeldedaten bestehen aus einem komplexen Benutzernamen und einem 72-stelligen Kennwort.
  • Selbst bei einem erfolgreichen Angriff sind so andere Kundendaten geschützt. 
 

Spezialfälle

System Login

Wir besitzen ein System Login mit dem Zugriff auf sämtliche Kundendaten. Aktuell ist dieses durch ein zusätzliches Kennwort geschützt.

Master Login

Wir besitzen die Möglichkeit, im Namen eines beliebigen Benutzers anzumelden. Dieses haben wir mit einer 2FA Authentifizierung erweitert und der Zugang ist nur einzelnen Personen möglich.

Direkter Zugriff der Entwickler

 Für Support- und Wartungsarbeiten sowie für die Auslieferung des Release besitzen wir einen direkten Zugriff auf die Datenbank mit entsprechenden Rechten. Dieser ist durch ein komplexes Kennwort geschützt.