Skip to content

Security

Jani Giannoudis edited this page Jul 20, 2023 · 18 revisions

Payroll Engine Security

The Payroll Engine running as a background service does not have authentication and authorization.The Web Application has a user login with password.

The Payroll Engine is a backend service and should not be used on the public Internet.

Backend server security

Tenant authorization

Zur Absicherung der Mandantenfähigkeit unterstützt der Backend-Server den HTTP header Auth-Tenant. Is der Header vorhanden, wird dieser bei jeder REST-Abfrage mit dem Mandant der URL verglichen.

Auth-Tenant: "MyTenantIdentifier"

GET request body

Die RESP-API beinhaltet einige Abfrage-Endpunkte welche Daten im Request-Body erlauben. Aus Sicherheitsgründen sind diese Endpunkte keine HTTP GET Methoden, sondern sind als POST Methoden aufzurufen.

Database SQL injection

At the database level, the micro-ORM component Dapper prevents SQL Injections.

Web application server security

User Login

Zur Nutzung der Webapplikation muss sind der Anwender einloggen. Beim ersten Login muss der Anwender sein Passwort festlegen und lässt sich in den Benutzereinstellungen ändern.

Ist der Login-Name (User Identifier) in mehreren Mandanten vorhanden, muss dieser zuvor ausgewählt werden. Das Login-Passwort gilt pro Mandant.

Die Webapplikation verwendet die Tenant authorization.

User authorization

Die Webapplikation unterscheidet zwischen folgenden Benutzertypen

  • User - Anwender der Webapplikation mit den Features
  • Employee - Anwender der Webapplikation und Lohnempfänger (Self-Employeement)
  • Administrator - Besitzt lediglich die Möglichkeit die Anwender zu verwalten
  • Supervisor - Kann alle Features uneingeschränkt nutzen

In der Webapplikation ist der Benutzertyp am Icon des Befehls zu den Benutzereinstellungen ersichtlich.

User features

Die Funktionalität der Webapplikation wird über Features (Feature Toggles) gesteuert, welche dem Benutzer zugeordnet werden. Features werden verwaltet von

  • Benutzer vom Typ Administrator
  • Benutzer vom Typ Supervisor
  • Benutzer welche das Feature Users besitzt

Das Feature EmployeeCases erlaubt den Zugriff auf die Mirarbeiterfälle, indem es in der Naviagtion eine zusätzliche Seiten einblendet. Gewisse Features wie z. B. das Forecast-Feature erweitern den Inhalt von bestehenden Seiten.

Clone this wiki locally