Architektur der Benutzerpersonalisierung

Die Environment Manager-Benutzerpersonalisierung basiert auf einer dreistufigen Architektur.

In diesem Abschnitt werden folgende Themen behandelt:

Einführung

Kollektiv werden die Komponenten der Standardarchitektur auch als Standort bezeichnet. Standorte ermöglichen eine logische Gruppierung von Benutzern, z. B. nach Geschäftsbereich oder geografischem Standort. Bei Unternehmen mit mehreren Standorten wird an jedem Standort dieselbe Architektur verwendet. Die Standorte sind über ihre SQL-Server via Replikation miteinander verbunden.

Es ist nicht erforderlich, dass jeder Niederlassungsstandort über einen dedizierten SQL-Server verfügt. Es wird jedoch eine bessere Leistung erzielt, da der Datenverkehr innerhalb des LAN-Netzwerks (Local Area Network) stattfindet und nicht über das WAN-Netzwerk (Wide Area Network) geleitet werden muss.

Das System im nachfolgenden Diagramm besteht aus zwei Standorten: dem Standardstandort und einem optionalen Niederlassungsstandort.

Die Clientendpunkte eines Standorts kommunizieren immer dann mit ihrem Personalisierungsserver, wenn eines der folgenden Ereignisse stattfindet:

  • Anmeldung – Meldet sich ein Benutzer an einem verwalteten Endpunkt an, wird die Datei mit dem Environment Manager-Paket (AEMP) geladen. Ist die Benutzerpersonalisierung aktiviert, wird der Benutzer mit dem in der Konfiguration angegebenen Personalisierungsserver verbunden. Benutzer, Endpunkt und Softwareversion werden vom Endpunkt an den Server weitergeleitet. Dieser bestimmt dann den Standort und die Personalisierungsgruppe, denen der Benutzer angehört. Der Personalisierungsserver leitet anschließend eine Personalisierungskonfiguration zurück an den Client auf dem verwalteten Endpunkt. In dieser Konfigurationsdatei sind die Personalisierungseinstellungen für den Benutzer enthalten sowie Angaben zu den verwalteten Anwendungen und den Zertifikaten für den Benutzer.

    Die Windows-Einstellungen werden synchronisiert und auf den Endpunkt angewendet, womit die Anmeldung der Benutzerpersonalisierung abgeschlossen ist.

  • Anwendungsstart – Startet ein Benutzer eine Anwendung auf dem Endpunkt, wird der Vorgang kurzzeitig angehalten, um Environment Manager die Durchführung der erforderlichen Virtualisierungsaktionen zu ermöglichen.

    Die Details der Anwendung werden analysiert und Environment Manager prüft, ob die Benutzerpersonalisierung aktiviert ist und ob es sich bei der Anwendung um eine zu verwaltende Anwendung handelt. Bei nicht zu verwaltenden Anwendungen werden etwaige Aktionen für die Richtlinienkonfiguration angewendet. Die Anwendung wird fortgesetzt, es werden jedoch keine Einstellungen für die Benutzerpersonalisierung verwaltet.

    Für die zu verwaltenden Anwendungen wird eine anwendungsspezifische Konfigurationsdatei erstellt. Daraus gehen die Datei- und Registrierungseinschlüsse, Ausschlüsse sowie ein Teilbereich der globalen Eigenschaften hervor, die in der Datenbank für die Benutzerpersonalisierung konfiguriert sind.

    Die Environment Manager-Richtlinienkonfiguration wird über den Prozessstart informiert und die relevanten Richtlinienaktionen werden in den virtuellen Cache repliziert.
    Während die Anwendung ausgeführt wird und der Benutzer die darin enthaltenen Einstellungen für die Benutzerpersonalisierung ändert, werden diese Änderungen virtualisiert und in den Cache auf dem Endpunkt geschrieben, und nicht in die physische Registrierung oder in das Dateisystem.

    Für die in Environment Managerkonfigurierten Anwendungsgruppen wird die Personalisierungsdatenbank nur synchronisiert, wenn die erste Anwendung der Gruppe gestartet wird. Es wird keine Synchronisierung durchgeführt, wenn die anderen Anwendungen der Gruppe gestartet werden.

  • Anwendungsstopp – Wird eine Anwendung geschlossen, erhält der Personalisierungsserver eine entsprechende Benachrichtigung. Eine Kopie der etwaig modifizierten Personalisierungseinstellungen wird in der SQL-Datenbank gespeichert. Wird der letzte Prozess innerhalb einer Gruppe oder die letzte Instanz eines verwalteten Prozesses ähnlicher Anwendungen beendet, wird der Cache mit dem Server synchronisiert.

    Wird eine Anwendung geschlossen, während andere Anwendungen derselben Gruppe noch ausgeführt werden, erfolgt keine Synchronisierung mit der Datenbank. Nur wenn auch die letzte Anwendung der Gruppe geschlossen wurde, erfolgt eine Synchronisierung mit der Datenbank.

  • Abmeldung – Meldet sich ein Benutzer ab, werden alle noch laufenden verwalteten Anwendungen von Windows gestoppt. Die Abmeldung wird wie gewohnt durchgeführt, bevor der Environment Manager-Abmeldebildschirm angezeigt wird. Die Einstellungen für Anwendung, Desktop und Zertifikat werden mit der Datenbank synchronisiert und der lokale virtuelle Cache wird gelöscht. Anschließend wird der Environment Manager-Abmeldebildschirm wieder ausgeblendet und die Windows-Abmeldung wird wie gewohnt durchgeführt.

    Falls Lokaler Cache aktiviert ist, wird der lokale virtuelle Cache nicht gelöscht, damit der Benutzer seine Einstellungen auch nach der Trennung vom Unternehmensnetzwerk beibehalten kann.

  • Konfigurationsabfrage – Administratoren haben die Möglichkeit, Änderungen an der Personalisierungskonfiguration vorzunehmen, auch während die Benutzer angemeldet sind. In einem bestimmten Intervall werden Konfigurationsabfragen durchgeführt. Dabei werden etwaige Konfigurationsänderungen erfasst und auf die verwalteten Endpunkte angewendet. Das Abfrageintervall wird in der Konsole über Erweiterte Einstellungen festgelegt.

Der virtuelle Cache auf dem Endpunkt ist der Stammordner für sämtliche Daten der Benutzerpersonalisierung. Dort werden virtualisierte Dateien und Registrierungseinstellungen vor dem Synchronisieren mit der Personalisierungsdatenbank gespeichert. Die Daten für die einzelnen Einstellungen und die verwalteten Anwendungen werden dort vorgehalten und aktualisiert, indem sie mit der Personalisierungsdatenbank synchronisiert werden.

Der virtuelle Cache ist ein auf den einzelnen verwalteten Endpunkten ausgeblendeter Ordner unter "C:\AppSenseVirtual".

Durch jedes der oben aufgeführten Ereignisse wird eine Synchronisierungsanfrage erstellt. Der Client sorgt dafür, dass der lokale virtuelle Cache mit der SQL-Datenbank aktualisiert wird. Bei jedem Anwendungsstart und -stopp gewährleistet die Software, dass die SQL-Datenbank und der lokale virtuelle Cache synchronisiert werden.

Stufe 1 – Clientendpunkt

Auf dem Clientendpunkt wird die Anmeldesitzung des Benutzers gehostet. Innerhalb der Sitzung gibt es die Environment Manager-Software mit den Modulen für die Benutzerpersonalisierung. Diese überwachen die Änderungen, die an verwalteten Anwendungen vorgenommen werden und melden diese zurück an den Personalisierungsserver.

Bei den Clientendpunkten kann es sich um eine beliebige Zusammenstellung aus Hardware und Software handeln, die in der Lage ist, eine Windows-Sitzung auszuführen:

  • Eigenständige Desktops, Laptops und Tablet-PCs
  • Terminalserver
  • Microsoft Hyper-V

Stufe 2 – Personalisierungsserver

Der Personalisierungsserver wird als IIS-Website (Internet Information Services) implementiert und fungiert als Vermittler zwischen den Endpunkten und der Personalisierungsdatenbank. Er ermöglicht den Zugriff auf die Datenbank von mehreren Clients aus, die so zentral verwaltet werden können. Der Personalisierungsserver ist in der Lage, die Identität der Clients zu prüfen, bevor er Anfragen verarbeitet. Dadurch müssen die Clients nicht als Benutzer zur Datenbank hinzugefügt werden.

Statusanfrage

Sie können prüfen, ob ein Personalisierungsserver installiert ist und ausgeführt wird und die Datenbankverbindung testen. Geben Sie dazu die folgende URL in Ihren Internetbrowser ein, wobei Sie <SERVER> durch den Namen des erforderlichen Servers ersetzen.

http://<SERVER>/PersonalizationServer/

Aus der Datei "status.aspx" für einen Server geht hervor, ob die Serververbindung erfolgreich war. Ebenso sind Details zu Verbindung, Datenbank und Server enthalten.

status.aspx-Seite

Statusanfrage für Lastausgleich

Bei Verwendung eines Lastausgleichmonitors zum Prüfen der Serverstatusseite (status.aspx) und wenn der Server auf Windows-Authentifizierung gesetzt ist, muss der Monitor die Windows-Anmeldeinformationen in den HTTP-Kopfzeilen angegeben. Anderenfalls gibt der Server eine Antwort vom Typ "nicht autorisiert" zurück. Alternativ sollte eine der folgenden für Ihre Einrichtung geeignete Methode verwendet werden:

Wählen Sie entsprechend Ihrer Einrichtung eine der folgenden Methoden, um den Systemzustand von Servern mit Lastausgleich zu prüfen.

IIS7 – Windows Server 2008 und R2

Geben Sie die folgenden URLs in einen Internetbrowser ein, wobei Sie <SERVER> durch den Namen des erforderlichen Servers ersetzen:

  • http://<SERVER>/PersonalizationServer/dbmonitor.aspx – Prüft die Verbindung mit der Datenbank. Wenn die Datenbank kontaktiert werden kann, wird der Wert OK ausgegeben, anderenfalls der Wert FEHLGESCHLAGEN.
  • http://<SERVER>/PersonalizationServer/pingmonitor.aspx – Prüft, ob die Adresse des Personalisierungsservers erreichbar ist. Falls ja, wird der Wert OK ausgegeben. Wird keine Meldung ausgegeben, liegt ein Fehler vor.

IIS6 – Windows Server 2003

Bei Verwendung von IIS6 muss das Skript "SetMonitorAnonymousIIS6.vbs" verwendet werden, um "dbmonitor.aspx" und "pingmonitor.aspx" für den anonymen Zugriff einzurichten. Weitere Einzelheiten erhalten Sie beim Support.

Stufe 3 – SQL-Server

Dieser enthält Informationen zu Personalisierungsstandorten und -servern, zu Benutzern, Gruppen und Anwendungen sowie Daten zur Endpunktkonfiguration und Benutzerpersonalisierung.

Die Daten auf dem Personalisierungsserver sind in Tabellen auf dem SQL-Server angeordnet und gespeichert. Dabei werden folgende logische Gruppen verwendet:

  • Personalisierungsdaten – Enthält Daten zum Benutzer sowie Angaben zur Gruppenzugehörigkeit und steuert die Daten für verwaltete Anwendungen. Bei jedem Öffnen oder Schließen einer verwalteten Anwendung werden die Anwendungsdaten hier aktualisiert.
  • Standortzugehörigkeit – Enthält Informationen zur Standortzugehörigkeit und gibt an, mit welchem Personalisierungsserver der Benutzer verbunden werden muss. Nachdem die Verbindung hergestellt wurde, werden Konfigurationsinformationen abgerufen. Dazu gehören Angaben zu Einschlüssen und Ausschlüssen für Registrierungselemente und Ordner.
  • Benutzergruppenzuweisung – Definiert die Gruppe, zu der der Benutzer gehört. Dadurch wird gesteuert, welche Anwendungen für den Benutzer verwaltet werden, zusätzlich zu seinen Windows-Einstellungen.
  • Autorisierte Benutzer – Enthält Tabellen, über die gesteuert wird, welche Benutzer autorisiert sind, sich mit dem Personalisierungsserver zu verbinden und welche Aktionen sie dort ausführen dürfen.
  • Archivierung – Speichert die Archivdaten der SQL Agent-Jobs für die tägliche und die bedarfsbasierte Archivierung in zwei Tabellen. Diese beziehen sich auf die Archive "Anwendungsprofil" und "Anwendungsdaten".
  • Auditing – Dient dem Einrichten und Konfigurieren der intern ausgelösten Prüfereignisse. Ferner wird gesteuert, in welchen Situationen und an welcher Stelle Ereignisse ausgelöst werden. Auf dieser Grundlage werden die erforderlichen Alarme und Berichte durch Management Center generiert.

  • Einstellungen verwalteter Anwendungen – Enthält die Details aller Pfadeinschlüsse und -ausschlüsse in Registrierungseinträgen und Ordnern für jede Anwendung und jede Anwendungsgruppe.
  • Allgemeine Einstellungen – Enthält system- und benutzerseitig definierte globale Eigenschaften für die Kopplung von Schlüsseln und Werten. Dazu gehören auch Konsolenversion, Timeouts und Archivierungsinformationen. Zu den Installationsinformationen gehört auch ein Upgradeverlauf, der vom Ivanti-Serverkonfigurationsportal verwaltet wird.

SQL Server AlwaysOn und SQL-Spiegelung

SQL Server AlwaysOn ist die bevorzugte SQL Server-Technologie zur Unterstützung von Hochverfügbarkeits-/Disaster Recovery-Szenarien. User Workspace Manager 10.x-Server wurden speziell für die Unterstützung dieser Technologie optimiert.

Die SQL-Spiegelung ist für Kunden von User Workspace Manager 10.1 FR1 und höher verfügbar, die derzeit auf die Always On-Technologie umsteigen. Weitere Informationen finden Sie in der Hilfe zu User Workspace Manager.

Kompatibilität mit Azure SQL as a Service

Die Personalisierungsdatenbank lässt sich nunmehr als Azure SQL-Datenbank bereitstellen. Früher wurde ein virtueller Azure-Computer benötigt, auf dem Microsoft SQL Server ausgeführt wurde. Die neue Funktion macht virtuelle Computer zum Verwalten der SQL-Datenbank in Azure überflüssig. Die erforderlichen Schritte zum Vorbereiten und Bereitstellen einer neuen oder bereits bestehenden Datenbank in Azure sind im folgenden Dokument der Ivanti Community beschrieben: DOC-73044.

Konfiguration und Verwaltung der Datenbank erfolgen weiterhin über das Serverkonfigurationsportal (SCP). Ferner werden SQL Server-Installationen auf lokalen und virtuellen Azure-Computern weiterhin unterstützt.