Multi-User und SAML Auth für Console & WebFront

Hallo,

ich möchte IP Symcon gerne in einem professionellen Umfeld mit mehreren Benutzern einsetzen und stoße hier auf die Hürde der Nutzung durch mehrere Benutzer mit unterschiedlichen Rechten/Rollen. Derzeit müsste ich es über unterschiedliche WebFronts („Ansichten“) mit unterschiedlichen Passwörtern lösen. Im Zusammenspiel mit einer WAF als Reverse Proxy ist das machbar, aber nicht wirklich schön. Im Beitrag „2FA Absicherung“ wurde darüber schon einmal grob diskutiert.

Sicherheit ist euch bei Symcon ja ein wichtiges Thema und so führt es mich zu der Frage, ob es eventuell auf Interesse stößt, sich im Bereich der Benutzerauthentifizierung an Console und WebFront neu aufzustellen? Mir schwebt hier eine Verwaltung mehrerer Benutzer und Rollen vor, so dass für unterschiedliche Gruppen von Benutzern auch unterschiedliche Ansichten im WebFront zugänglich werden. Vielleicht ließe es sich sogar soweit runter brechen, dass es ein Berechtigungskonzept für den Zugriff (Lesen, Schreiben, Ändern) für alle Objekte im Baum gibt.

Mit der Anmeldung würde ich mir dann auch SAML wünschen, so dass ein externer Identity Provider wie z.B. ein Azure Active Directory oder andere genutzt werden können. Das 2FA Thema wäre damit auch gleich erschlagen, da dass ja dann der Provider stellen kann.

Was meint ihr?

Danke & Grüße
Golo

Da gab/gibt es schon Diskusionen :wink: , z.B.

Hallo @ralf, danke für die Rückmeldung. Den 2FA-Threat hatte ich schon gesehen und sogar in meinem Beitrag verlinkt :wink: Ich wollte den Fokus mal etwas allgemeiner aufziehen, also auch auf Rechte & Rollen im Objektbaum und externe IDP.

SAML wäre sicherlich eine sehr offene und gute Lösung. SAML sollte auch aus Implementierungssicht „eher einfach“ sein, da es weitgehend im Browser abläuft und „die Applikation“ nur eine Rückmeldung über einen authentifizierten Account bekommt.

1 „Gefällt mir“

Mir würde es weiterhin vollkommen reichen, ich könnte z.B. über die URL die Berechtigung kodieren und den korrekten Aufruf über IP-Adressen und Ports (Reverse Proxy) absichern. Dort steht es dann jedem frei, SAML, 2FA, etc. zu implementieren.

In Firmenumgebungen hat man ja oft einen Webserver, die die Authentifizierung übernimmt und dann den Usernamen per Environment-Variable and die dahinterliegende Applikation übergibt.

Da ein Webserver von SAML über Kerberos, Client-Zertifikate, etc. eine große Anzahl an Authentifizierungsmechanismen unterstützt kommt das durchaus oft zum Einsatz.

Schwieriger wird es bei der Autorisierung, da hier IPS nochmal einen Verzeichnisdienst abfragen müsste und das dann auch Modifikationen an IPS selbst erfordert.

Auch die Authorisierung kann der Webserver machen. Über passende URLs bzw. Ports, so gibt es die ‚Externe‘ Sicht
http://proxy/webfront1 und die interne Sicht http://symcon/webfront15876 und der Proxy lässt die Anfragen nur dann zu, wenn der Nutzer auch autorisiert ist.

Ebenso für die ‚console‘ URL. Die Firewall auf der Symcon Maschine darf halt Anfragen an Symcon nur vom Proxy aus zulassen.

Die Ideen, den Zugriff über den vorgeschalteten Reverse Proxy zu authentifizieren und auf verschiedene Frontends zu autorisieren, ist natürlich im Moment die Lösung. Der Einbau eines detaillierten Rechte- und Rollenkonzeptes direkt in IP Symcon würde dort sicherlich einiges an Umbauten erfordern, das ist natürlich eine größere Baustelle. Nebenbei würde sogar noch ein Auditing mit abfallen - also das Logging, welcher Benutzer wann und was am System geändert hat.

Die Frage meinerseits ging auch in die Richtung des Symcon Teams: Habt ihr über sowas schon mal nachgedacht?

Das geht eben gerade NICHT. Ich kann zwar eine Authentifizierung durchführen, aber keine Autorisierung je Webfront. Hierfür müsste man Webfronts an Ports/Webserver binden können.