StoreFront

Sichern der StoreFront-Bereitstellung

In diesem Artikel werden Bereiche behandelt, die sich bei der Bereitstellung und Konfiguration von StoreFront auf die Systemsicherheit auswirken können.

Kommunikation zwischen Endbenutzern und StoreFront

Citrix empfiehlt, die Kommunikation zwischen Benutzergeräten und StoreFront mit HTTPS zu schützen. Dadurch werden Kennwörter und andere Daten, die zwischen dem Client und StoreFront gesendet werden, verschlüsselt. Zudem können einfache HTTP-Verbindungen durch verschiedene Angriffe beeinträchtigt werden, z. B. durch Man-in-the-Middle-Angriffe, insbesondere wenn Verbindungen von unsicheren Orten wie öffentlichen Wi-Fi-Hotspots aus hergestellt werden. Wenn die entsprechende IIS-Konfiguration nicht verfügbar ist, verwendet StoreFront HTTP für die Kommunikation.

Abhängig von Ihrer Konfiguration greifen die Benutzer über ein Gateway oder einen Load Balancer auf StoreFront zu. Sie können die HTTPS-Verbindung am Gateway oder Load Balancer beenden. In diesem Fall empfiehlt Citrix dennoch, die Verbindungen zwischen dem Gateway oder Load Balancer und StoreFront mit HTTPS zu schützen.

Informationen zum Aktivieren von HTTPS, Deaktivieren von HTTP und Aktivieren von HSTS finden Sie unter StoreFront mit HTTPS schützen.

StoreFront-Kommunikation mit Citrix Virtual Apps and Desktops-Servern

Citrix empfiehlt die Verwendung von HTTPS, um den Datenaustausch zwischen StoreFront und den Citrix Virtual Apps and Desktops Delivery Controllern zu schützen. Siehe Installieren von TLS-Serverzertifikaten auf Controllern. Alternativ können Sie Windows zum Schützen der Kommunikation zwischen den Servern mit von IPSec konfigurieren.

Sie können den Delivery Controller und StoreFront so konfigurieren, dass nur vertrauenswürdige StoreFront-Server mit dem Delivery Controller kommunizieren können (siehe Sicherheitsschlüssel verwalten).

StoreFront-Kommunikation mit Cloud Connectors

Citrix empfiehlt, das HTTPS-Protokoll zu verwenden, um den Datenaustausch zwischen StoreFront und Cloud Connectors zu schützen. Weitere Informationen finden Sie unter How to Enable SSL on Cloud Connectors to Secure XML Traffic. Alternativ können Sie Windows zum Schützen der Kommunikation zwischen den Servern mit von IPSec konfigurieren.

Remotezugriff

Citrix rät davon ab, den StoreFront-Server direkt dem Internet zugänglich zu machen. Citrix empfiehlt die Verwendung eines Citrix Gateways für die Authentifizierung und den Zugriff für Remotebenutzer.

Microsoft IIS härten

Sie können StoreFront mit einer eingeschränkten IIS-Konfiguration konfigurieren. Dies ist jedoch nicht die IIS-Standardkonfiguration.

Dateinamenerweiterungen

Mit der Anforderungsfilterung können Sie eine Liste zulässiger Dateinamenerweiterungen konfigurieren und nicht aufgeführte Dateinamenerweiterungen verbieten. Siehe IIS-Dokumentation.

StoreFront benötigt die folgenden Dateinamenerweiterungen:

  • . (leere Erweiterung)
  • .appcache
  • .aspx
  • .cr
  • .css
  • .dtd
  • .gif
  • .htm
  • .html
  • .ica
  • .ico
  • .jpg
  • .js
  • .png
  • .svg
  • .txt
  • .xml

Ist Download oder Upgrade der Citrix Workspace-App für eine Store-Website aktiviert, sind für StoreFront außerdem diese Dateinamenerweiterungen erforderlich:

  • .dmg
  • .exe

Ist die Citrix Workspace-App für HTML5 aktiviert, sind für StoreFront zusätzlich diese Dateinamenerweiterung erforderlich:

  • .eot
  • .ttf
  • .woff
  • .wasm

Verben

Mit der Anforderungsfilterung können Sie eine Liste zulässiger Verben konfigurieren und nicht aufgeführte Verben verbieten. Siehe IIS-Dokumentation.

  • GET
  • POST
  • HEAD

Nicht-ASCII-Zeichen in URLs

Wenn Sie sicherstellen, dass Storenamen und Websitenamen nur ASCII-Zeichen enthalten, enthalten StoreFront-URLs keine Nicht-ASCII-Zeichen. Sie können Nicht-ASCII-Zeichen mithilfe der Anforderungsfilterung verbieten. Siehe IIS-Dokumentation.

MIME-Typen

Sie können die OS-Shell-MIME-Typen für die folgenden Dateinamenerweiterungen entfernen:

  • .exe
  • .dll
  • .com
  • .bat
  • .csh

Siehe IIS-Dokumentation.

X-Powered-By-Header entfernen

Standardmäßig meldet IIS, dass es ASP.NET verwendet, indem es den Header X-Powered-By mit Wert ASP.NET hinzufügt. Sie können IIS so konfigurieren, dass dieser Header entfernt wird. Weitere Informationen finden Sie in der IIS-Dokumentation zu CustomHeaders.

Serverheader mit IIS-Version entfernen

Standardmäßig meldet IIS die IIS-Version, indem es den Header Server hinzufügt. Sie können IIS so konfigurieren, dass dieser Header entfernt wird. Siehe IIS-Dokumentation zur Anforderungsfilterung.

StoreFront-Website in eine eigene Partition verschieben

Sie können StoreFront-Websites auf einer eigenen, von den Systemdateien getrennten Partition hosten. In IIS müssen Sie die Standardwebsiteverschieben oder eine separate Website in der gewünschten Partition erstellen, bevor Sie die StoreFront-Bereitstellung erstellen.

IIS-Features

Eine Liste der IIS-Features, die von StoreFront installiert und verwendet werden, finden Sie unter Systemanforderungen. Sie können andere IIS-Features entfernen.

StoreFront verwendet ISAPI-Filter zwar nicht direkt, doch das Feature ist für ASP.NET erforderlich und kann daher nicht deinstalliert werden.

Handler-Zuordnungen

StoreFront erfordert die folgenden Handler-Zuordnungen. Sie können andere Handler-Zuordnungen entfernen.

  • ExtensionlessUrlHandler-Integrated-4.0
  • PageHandlerFactory-Integrated-4.0
  • StaticFile

Weitere Informationen finden Sie in der IIS-Dokumentation zu Handlern.

ISAPI-Filter

StoreFront benötigt keine ISAP-Filter. Sie können alle ISAPI-Filter entfernen. Siehe IIS-Dokumentation zu ISAPI-Filtern.

.NET-Autorisierungsregeln

Standardmäßig ist auf IIS-Servern die .NET-Autorisierungsregel auf “Alle Benutzer zulassen” festgelegt. Standardmäßig erbt die von StoreFront verwendete Website diese Konfiguration.

Wenn Sie die .NET-Autorisierungsregel auf Serverebene entfernen oder ändern, müssen Sie die Regeln der von StoreFront verwendeten Website außer Kraft setzen, um eine Zulassungsregel für “Alle Benutzer” hinzuzufügen, und alle anderen Regeln zu entfernen.

Anwendungspools

StoreFront erstellt eine Reihe von Anwendungspools. Ändern Sie nicht die von den einzelnen IIS-Anwendungen verwendeten Anwendungspools bzw. die Identität der Pools. Wenn Sie mehrere Sites verwenden, ist es nicht möglich, jede Site für die Verwendung eigener Anwendungspools zu konfigurieren.

In den Recycling-Einstellungen können Sie das Leerlauftimeout und die Menge des virtuellen Speichers für jeden Anwendungspool festlegen. Hinweis: Über einen Browser angemeldete Benutzer werden beim Recycling des Anwendungspools “Citrix Receiver für Web” abgemeldet. Daher ist für diesen standardmäßig ein tägliches Recycling für 02:00 Uhr festgelegt, um Störungen zu minimieren. Wenn Sie eine Recyclingeinstellung ändern, kann dies dazu führen, dass die Benutzer zu anderen Tageszeiten abgemeldet werden.

Erforderliche Einstellungen

  • Ändern Sie die IIS-Authentifizierungseinstellungen nicht. StoreFront verwaltet die Authentifizierung und konfiguriert die benötigten Verzeichnisse der StoreFront-Site mit den erforderlichen Authentifizierungseinstellungen.
  • Wählen Sie für den StoreFront-Server unter SSL-Einstellungen nicht die Option Clientzertifikate: Erforderlich. Die StoreFront-Installation konfiguriert die entsprechenden Seiten der StoreFront-Site mit dieser Einstellung.
  • StoreFront erfordert Cookies für den Sitzungsstatus und andere Funktionen. In bestimmten Verzeichnissen muss unter Sitzungszustand, Cookie-Einstellungen, Modus auf Cookies verwenden festgelegt sein.
  • Für StoreFront erfordert für die .NET-Vertrauensebene die Einstellung auf Volles Vertrauen. Legen Sie für die .NET-Vertrauensstufe keinen anderen Wert fest.

Konfigurieren von Benutzerrechten

Hinweis:

Microsoft IIS wird im Rahmen der StoreFront-Installation aktiviert. Microsoft IIS gewährt die Anmeldeberechtigung Als Batchauftrag anmelden und das Privileg Annehmen der Clientidentität nach Authentifizierung für die integrierte Gruppe “IIS_IUSRS”. Dies ist normales Microsoft IIS-Installationsverhalten. Ändern Sie diese Benutzerrechte nicht. Weitere Informationen finden Sie in der Microsoft-Dokumentation.

Wenn Sie StoreFront installieren, werden den Anwendungspools die Anmeldeberechtigung Anmelden als Dienst und die Privilegien Anpassen von Speicherkontingenten für einen Prozess, Generieren von Sicherheitsüberwachungen und Ersetzen eines Tokens auf Prozessebene zugewiesen. Dies ist normales Installationsverhalten beim Erstellen von Anwendungspools. Die Anwendungspools sind Citrix Configuration API, Citrix Delivery Services-Ressourcen, Citrix Delivery Services-Authentifizierung und Citrix Receiver für Web.

Sie brauchen die Benutzerrechte nicht zu ändern. Diese Privilegien werden von StoreFront nicht verwendet und werden automatisch deaktiviert.

Bei der StoreFront-Installation werden die folgenden Windows-Dienste erstellt:

  • Citrix Konfigurationsreplikationsdienst (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Clusterbeitrittsdienst (NT SERVICE\CitrixClusterService)
  • Citrix Peerauflösungsdienst (NT SERVICE\Citrix Peer Resolution Service)
  • Citrix Credential Wallet-Dienst (NT SERVICE\CitrixCredentialWallet)
  • Citrix Abonnementstoredienst (NT SERVICE\CitrixSubscriptionsStore)
  • Citrix Standarddomänendienste (NT SERVICE\CitrixDefaultDomainService)

Wenn Sie für StoreFront die eingeschränkte Kerberos-Delegierung für XenApp 6.5 konfigurieren, wird der Citrix StoreFront-Protokollübergangsdienst (NT SERVICE\SYSTEM) erstellt. Dieser Dienst benötigt ein Privileg, dass normalerweise Windows-Diensten nicht gewährt wird.

Konfigurieren von Diensteinstellungen

Die die oben im Abschnitt “Konfigurieren von Benutzerrechten” aufgelisteten Windows-Dienste für StoreFront verwenden beim Anmelden die Identität “Netzwerkdienst”. Ändern Sie diese Konfiguration nicht. Der Citrix StoreFront-Protokollübergangsdienst meldet sich als “SYSTEM” an. Ändern Sie diese Konfiguration nicht.

Konfigurieren der Gruppenmitgliedschaften

Wenn Sie eine StoreFront-Servergruppe konfigurieren, werden der Sicherheitsgruppe “Administratoren” die folgenden Dienste hinzugefügt:

  • Citrix Konfigurationsreplikationsdienst (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Cluster Join (NT SERVICE\CitrixClusterService) . Dieser Dienst wird nur auf Servern angezeigt, die Teil einer Gruppe sind, und wird nur während des Beitritts ausgeführt.

Diese Gruppenmitgliedschaften sind erforderlich damit StoreFront korrekt funktioniert:

  • Erstellen, Exportieren, Importieren, Löschen und Festlegen der Zugriffsberechtigungen von Zertifikaten
  • Lesen und Schreiben der Windows-Registrierung
  • Hinzufügen und Entfernen von Microsoft .NET Framework-Assemblys im globalen Assemblycache (GAC)
  • Zugriff auf den Ordner **Programme\Citrix\**<StoreFrontSpeicherort>
  • Hinzufügen, Bearbeiten und Entfernen von App-Poolidentitäten und IIS-Webanwendungen
  • Hinzufügen, Bearbeiten und Entfernen von lokalen Sicherheitsgruppen und Firewallregeln
  • Hinzufügen und Entfernen von Windows-Diensten und PowerShell-Snap-Ins
  • Registrieren von Microsoft Windows Communication Framework (WCF)-Endpunkten

Bei Updates zu StoreFront kann sich diese Liste der Operationen ohne Ankündigung ändern.

Die StoreFront-Installation erstellt außerdem die folgenden lokalen Sicherheitsgruppen:

  • CitrixClusterMembers
  • CitrixCWServiceReadUsers
  • CitrixCWServiceWriteUsers
  • CitrixDelegatedAuthenticatorUsers
  • CitrixDelegatedDirectoryClaimFactoryUsers
  • CitrixPNRSReplicators
  • CitrixPNRSUsers
  • CitrixStoreFrontAdministrators
  • CitrixSubscriptionServerUsers
  • CitrixSubscriptionsStoreServiceUsers
  • CitrixSubscriptionsSyncUsers

StoreFront verwaltet die Mitgliedschaft in diesen Sicherheitsgruppen. Sie werden für die Zugriffssteuerung in StoreFront verwendet und nicht auf Windows-Ressourcen wie Ordner und Dateien angewendet. Bearbeiten Sie diese Gruppenmitgliedschaften nicht.

Zertifikate in StoreFront

Serverzertifikate

Serverzertifikate werden zur Identifikation der Maschinen und für die TLS-Transportsicherheit in StoreFront verwendet. Wenn Sie die ICA-Dateisignierung aktivieren, kann StoreFront auch Zertifikate verwenden, um ICA-Dateien digital zu signieren.

Weitere Informationen finden Sie unter Kommunikation zwischen Endbenutzern und StoreFront und ICA-Dateisignierung.

Tokenverwaltungszertifikate

Sowohl die Authentifizierungsdienste als auch Stores benötigen Zertifikate für die Tokenverwaltung. StoreFront generiert ein selbstsigniertes Zertifikat, wenn ein Authentifizierungsdienst oder Store erstellt wird. Von StoreFront generierte, selbstsignierte Zertifikate sollten für keinen anderen Zweck verwendet werden.

Citrix Delivery Services-Zertifikate

StoreFront hält eine Reihe von Zertifikaten in einem benutzerdefinierten Windows-Zertifikatspeicher (Citrix Delivery Services). Der Citrix Konfigurationsreplikationsdienst, der Citrix Credential Wallet-Dienst und der Citrix Abonnementstoredienst verwenden diese Zertifikate. Jeder StoreFront-Server in einem Cluster hat eine Kopie dieser Zertifikate. Diese Dienste verwenden nicht TLS für die sichere Kommunikation und diese Zertifikate werden nicht als TLS-Serverzertifikate verwendet. Diese Zertifikate werden erstellt, wenn ein StoreFront-Store erstellt oder wenn StoreFront installiert wird. Ändern Sie den Inhalt dieses Windows-Zertifikatspeichers nicht.

Codesignaturzertifikate

StoreFront enthält eine Reihe von PowerShell-Skripts (.ps1) im Ordner <Installationsverzeichnis>\Scripts. Die Standardinstallation von StoreFront verwendet diese Skripts nicht. Sie vereinfachen Konfigurationsschritte für bestimmte, seltene Aufgaben. Diese Skripts sind signiert, so dass StoreFront eine PowerShell-Ausführungsrichtlinie unterstützen kann. Wir empfehlen die Richtlinie AllSigned. (Die Richtlinie Eingeschränkt wird nicht unterstützt, da sie das Ausführen von PowerShell-Skripts verhindert.) StoreFront ändert die PowerShell-Ausführungsrichtlinie nicht.

Obwohl StoreFront kein Codesignaturzertifikat in der Aufstellung der vertrauenswürdigen Herausgeber installiert, kann Windows dort automatisch das Codesignaturzertifikat hinzufügen. Dies geschieht, wenn das PowerShell-Skript mit der Option Immer ausführen ausgeführt wird. (Wenn Sie die Option Nie ausführen wählen, wird das Zertifikat der Aufstellung der nicht vertrauenswürdigen Zertifikate hinzugefügt, und die PowerShell-Skripts von StoreFront werden nicht ausgeführt.) Nachdem das Codesignaturzertifikat der Aufstellung der vertrauenswürdigen Herausgeber hinzugefügt wurde, wird das Ablaufen nicht mehr von Windows geprüft. Sie können dieses Zertifikat aus der Aufstellung der vertrauenswürdigen Herausgeber entfernen, nachdem die StoreFront-Aufgaben abgeschlossen wurden.

Legacy-TLS-Versionen deaktivieren

Citrix empfiehlt, TLS 1.0 und 1.1 sowohl für die Client- als auch für die Serverkommunikation auf dem Windows-Server zu deaktivieren. Dies ist über die Gruppenrichtlinie oder die Windows-Registrierung möglich. Siehe Microsoft-Dokumentation.

Isolierung der StoreFront-Sicherheit

Falls Sie Webanwendungen in derselben Webdomäne (Domänenname und Port) wie StoreFront bereitstellen, können die mit diesen Webanwendungen verbundenen Sicherheitsrisiken eventuell auch die Sicherheit der StoreFront-Bereitstellung negativ beeinflussen. Ist höhere Sicherheit erforderlich, empfiehlt Citrix die Bereitstellung von StoreFront in einer getrennten Webdomäne.

ICA-Dateisignierung

In StoreFront können ICA-Dateien digital mit einem auf dem Server angegebenen Zertifikat signiert werden, damit Citrix Workspace-App-Versionen, die dieses Feature unterstützen, sicherstellen können, dass die Datei aus einer vertrauenswürdigen Quelle stammt. ICA-Dateien können mit einem Hashalgorithmus signiert werden, der von dem auf dem StoreFront-Server ausgeführten Betriebssystem unterstützt wird, z. B. SHA-1 und SHA-256. Weitere Informationen finden Sie unter Aktivieren der ICA-Dateisignierung.

Benutzerseitige Kennwortänderung

Sie können Benutzern, die sich über einen Webbrowser mit Active Directory-Domänenanmeldeinformationen anmelden, gestatten, ihre Kennwörter zu ändern, und zwar entweder jederzeit oder nur, wenn sie abgelaufen sind. Dadurch werden jedoch vertrauliche Sicherheitsfunktionen für alle Personen offengelegt, die auf einen der Stores, die diesen Authentifizierungsdienst verwenden, zugreifen können. Wenn Ihr Unternehmen eine Sicherheitsrichtlinie hat, die Funktionen zur Änderung des Kennworts nur zur internen Verwendung reserviert, stellen Sie sicher, dass auf keinen der Stores von außerhalb des Unternehmensnetzwerks zugegriffen werden kann. Beim Erstellen des Authentifizierungsdiensts verhindert die Standardkonfiguration, dass die Benutzer ihre Kennwörter ändern, selbst wenn die Kennwörter abgelaufen sind. Weitere Informationen finden Sie unter Kennwortänderung durch Benutzer zulassen.

Anpassungen

Erstellen Sie aus Sicherheitsgründen keine Anpassungen, mit denen Inhalte oder Skripts von Servern geladen werden, die nicht Ihrer Kontrolle unterstehen. Kopieren Sie den Inhalt bzw. das Skript in den benutzerdefinierten Websiteordner, wo Sie die Anpassungen vornehmen. Wenn StoreFront für HTTPS-Verbindungen konfiguriert ist, müssen alle Links zu benutzerdefinierten Inhalten und Skripts ebenfalls HTTPS verwenden.

Sicherheitsheader

Wenn Sie eine Store-Website über einen Webbrowser aufrufen, gibt StoreFront die folgenden Sicherheitsheader zurück, die Einschränkungen für den Webbrowser festlegen.

Headername Wert Beschreibung
content-security-policy frame-ancestors 'none' Dies verhindert Clickjacking-Angriffe, da andere Sites keine StoreFront-Websites in einen Frame einbetten können. StoreFront verwendet Inline-Skripts und -Stile, sodass diese nicht mit einer Inhaltsicherheitsrichtlinie (Content Security Policy) blockiert werden können. StoreFront-Websites zeigen nur von Administratoren konfigurierte Inhalte und keine Benutzereingaben an, sodass Inlineskripts nicht blockiert werden müssen.
X-Content-Type-Options nosniff Dadurch wird MIME-Sniffing vermieden.
X-Frame-Options deny Dies verhindert Clickjacking-Angriffe, da andere Sites keine StoreFront-Websites in einen Frame einbetten können. content-security-policy ersetzt es durch frame-ancestors 'none', es wird jedoch von einigen älteren Browsern, die content-security-policy nicht unterstützen, verstanden.
X-XSS-Protection 1; mode=block Wird von einigen Browsern zur Abwehr von XSS-Angriffen (Cross-Site-Scripting) verwendet

Cookies

StoreFront verwendet mehrere Cookies. Beispiele für zum Betrieb der Website verwendeten Cookies:

Cookie Beschreibung
ASP.NET_SessionId Verfolgt die Sitzung des Benutzers einschließlich des Authentifizierungsstatus. Hat HttpOnly aktiviert.
CtxsAuthId Um Session Fixation-Angriffe zu verhindern, verfolgt StoreFront außerdem, ob der Benutzer mithilfe dieses Cookie authentifiziert wurde. Es hat HttpOnly festgelegt.
CsrfToken Verhindert CSRF-Angriffe über das standardmäßige Cookie-to-Header-Token. Der Server setzt ein Token im Cookie. Der Client liest das Token aus dem Cookie und fügt es in die Abfragezeichenfolge oder einen Header in nachfolgenden Anforderungen ein. Für das Cookie darf HttpOnly nicht festgelegt sein, damit das Client-JavaScript es lesen kann.
CtxsDeviceId Identifiziert das Gerät. Hat HttpOnly aktiviert.

StoreFront platziert eine Reihe weiterer Cookies, um den Benutzerzustand zu verfolgen. Einige müssen von JavaScript gelesen werden, daher ist HttpOnly für sie nicht gesetzt. Diese Cookies enthalten keine Informationen zur Authentifizierung oder andere vertrauliche Informationen.

Weitere Sicherheitsinformationen

Hinweis:

Diese Informationen können jederzeit und ohne vorherige Ankündigung geändert werden.

Sicherheitsprüfungen an StoreFront können zur Erfüllung gesetzlicher oder anderer Auflagen erforderlich sein. Die o. g. Konfigurationsoptionen können zu dazu beitragen, dass einige Sicherheitsprobleme vermieden werden.

Gibt es ein Gateway zwischen der Sicherheitsprüfung und StoreFront, können sich bestimmte Befunde im Prüfbericht auf das Gateway anstelle von StoreFront beziehen. Sicherheitsprüfberichte unterscheiden hier normalerweise nicht (Beispiel: TLS-Konfiguration). Aus diesem Grund können technische Beschreibungen in Sicherheitsprüfberichten irreführend sein.