arcplan Enterprise 8 Review Part 1

arcplan 8Da ich ja vor ein paar Monaten in meinem Artikel zu arcplan 8 Enterprise nicht nur positive Dinge geschrieben habe wird es nun zeit die Kritikpunkte nochmals genauer zu durchleuchten. Aus diesem Grund starte ich hiermit eine neue Reihe an Blogposts unter dem Titel „arcplan Enterprise 8 Review“.

Wir starten also mit dem Kritikpunkt, der HTML5-Client kann keinen Windows-User auslesen (zu den technischen Gründen komme ich später).

Diese in meinen Augen relativ zentrale Funktion wird in vielen Fällen zur Benutzerberechtigung innerhalb einer Applikation verwendet. arcplan bietet für diese Problemstellung out of the Box ihr „Usermanagement“ an. Für eine neu zu entwickelnde Applikation mag dies ein Ansatzpunkt sein, den Aufwand dies in eine bestehende Applikation mit bereits vorhandenem Berechtigungskonzept zu implementieren, würde ich allerdings definitiv scheuen und stellt für mich persönlich keine Lösung dar.

Soviel zur Problemstellung, jammern hilft ja bekanntlich nichts, also machen wir uns an eine Lösung!

Bevor wir das Problem lösen können, müssen wir allerdings erst die Ursache des Problems finden.
Die Ursache des Problems liegt in den verwendeten Basis-Technologien, HTML5 bzw. Java-Script, kann aufgrund des Sicherheitskonzepts der Standards nicht auf Client-Rechner zugreifen, um dort den User auszulesen.

 Client-User im HTML5-Client

Client-User im HTML5-Client

In der obigen Abbildung wird dargestellt, was der HTML5 Client unter Verwendung der möglichen Funktionen zurückliefert. Wir erhalten also nur den User unter dem der arcplan Enterprise Dienst läuft (Username(Windowsuser)) und den User mit welchem wir uns an der Datenbank angemeldet haben (Username(DB-Connection)). Da der Datenbank-User nicht zwangsläufig der Client-User sein muss, hilft uns dies also nur bedingt weiter.

Wenn also der arcplan-Client aufgrund der verwendeten Basis-Technologie den Client-User nicht auslesen kann, müssen wir somit einen anderen Weg finden dies zu tun.

Der einfachste Weg hiefür ist, im verwendeten Webserver (in meinem Fall ein IIS) die Windows-Authentifizierung einzustellen, sobald dies geschieht lässt sich deutlich mehr mit den verwendeten Funktionen erreichen.

Client-User im HTML5-Client mit aktivierter Windows-Authentifizierung am Webserver

Client-User im HTML5-Client mit aktivierter Windows-Authentifizierung am Webserver

Wir erhalten zwar immer noch keinen „Client-User“ mit der Funktion Username(Clientuser), aber die Funktionen Username(Windowsuser) sowie Getwebservervariable(„Remoteuser“) liefern Werte zurück, mit denen wir arbeiten können.

Wer also einen Parallelbetrieb mehrere Clients plant, muss ein wenig mit der Funktion „Falls()“ spielen, damit er im richtigen Client der jeweiligen Funktion das selbe Ergebnis erzielt.

Abschließend in Puncto „Client-User auslesen“ betrachtet kann man sagen, dass der HTML5-Client natürlich eine feine Sache ist, wer etwas mehr Aufwand investiert bekommt zwei wesentliche Verbesserungen, nämlich:

  1. Unabhängigkeit von Java und der Probleme die daraus resultieren (siehe hier).
  2. Device-Unabhängigkeit, die Applikation kann auf jedem HTML5-fähigen Gerät laufen.

so long | Daniel Simnacher

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Captcha * Time limit is exhausted. Please reload CAPTCHA.