SOG ERP Softwareverteilung über Logonscripte
Um eine Verteilung von Updates der SOG-Windows-Tools und von SOG ERP zu erreichen, verfolgt die SOG das Konzept der Softwareverteilung über Logon-Scripte.
Da normale Benutzer keine Schreibrechte auf Tools- oder Projektverzeichnisse und oder der globalen Windowsregistrierung haben, ist die Installation des SOG Windowsdienstes SOGSUSRV nötig. Der Aktualisierungsauftrag wird an diesen Dienst übergeben und ohne Eingabe von administrativen Kennwörtern durchgeführt.
Ziel ist es, die Clientaktualisierung ohne lokale Administrationsrechte zu ermöglichen.
Durch die Installation vom SOG Windows Dienst SOGSUSRV sollte eine möglichst große Sicherheit im Betrieb erreicht werden, ohne dabei die durch Microsoft vorgegebenen Sicherheitseinrichtungen der aktuellen Betriebssysteme abzuschalten oder zu umgehen.
Wenn der angemeldete Benutzer administrative Rechte hat und der Dienst SOGSUSRV ist nicht installiert, fordert die Aktualisierung eine UAC-Berechtigung an. Die UAC-Berechtigung kann durch einfache UAC-Bestätigung erfolgen oder durch die Eingabe eines Administrator Kennwortes erteil werden.
Beispiel der Logonscripte
Nachfolgend sind die verwendeten Logon-Scripte beispielhaft aufgeführt und erläutert.
Die Logon-Scripte liegen auf auf dem SOG ERP Server im Verzeichnis ".. sog\netlogon".
logon.bat
Erläuterung:
Die Bereiche zwischen "@rem SOG-AUTO-GENERATE-START" und "@rem SOG-AUTO-GENERATE-END" werden von den SOG-Windows-Tools automatisch aktualisiert und dürfen daher nicht manuell verändert werden. Der Aufruf des "mountSOG.bat" sorgt dafür, dass Laufwerke verbunden werden (Siehe weiter unten).
Der Aufruf von "hhstartup2" sorgt für die eigentliche Aktualisierung. hhstartup2 entscheidet dabei selbst, ob eine Aktualisierung notwendig ist, ob diese direkt durchgeführt wird, ob der SOGSUSRV Dienst verwendet wird oder ob eine UAC-Aktivierung angeforderlich wird.
Um die eigentliche Aktualisierung durchzuführen, wird das Script "logonUAC.bat" ausgeführt, dass dann in einer Administratorumgebung abläuft.
Die Ausführung von "logonUAC.bat" stößt weitere Aktionen im Benutzerkontext an. Hier werden z.B. Startmenü-Einträge erzeugt und lokale Variablen registriert.
logonUAC.bat
Erläuterung:
Dieses Script wird durch den Dienst SOGSUSRV aufgerufen und führt das eigentliche Update durch. In einer UAC-Umgebung ist ggf. der LOGONSERVER nicht mehr gesetzt. Daher wird hier ein Initialwert hergestellt.
Der Aufruf von "mountSOG.bat" sorgt für die Verbindung von Netzlaufwerken auch in der UAC-Umgebung. Anschließend erfolgt die eigentliche Aktualisierung über das Kommando "sogcon" mit den Optionen "-updtools" für einen Toolsupdate, und "-regproj" für die Projektregistrierung. Da während einer Ausführung durch eine UAC-Aktivierung nicht auf das Ende eines gestarteten Programmes gewartet werden kann, wird als letztes das Ende der Aktion durch Löschen einer evt. übergebenen Signal-Datei signalisiert.
mountSOG.bat
Erläuterung:
Dieses Script verbindet das Laufwerk für SOG ERP (hier S:\). Dabei wird auf dem Server das "subst" Kommando, auf allen Clients das "net use" Kommando verwendet.
Im Script "mountSOG.bat" dürfen keine weiteren Einträge gemacht werden, da das Script auch von Diensten aufgerufen wird.