Citrix ADC

Anwendungsfall: So erzwingen Sie Secure- und HttpOnly-Cookie-Optionen für Websites, die die Citrix ADC-Appliance verwenden

Die Webadministratoren können Secure oder HttpOnly oder sowohl die Flags auf der Session-ID als auch die Authentifizierungscookies erzwingen, die von den Webanwendungen generiert werden. Sie können die Set-Cookie-Header so ändern, dass sie diese beiden Optionen enthalten, indem Sie einen virtuellen HTTP-Lastenausgleichsserver und Rewriterichtlinien auf einer Citrix ADC-Appliance verwenden.

  • HttpOnly - Diese Option in einem Cookie bewirkt, dass die Webbrowser das Cookie nur über das HTTP- oder HTTPS-Protokoll zurückgeben. Die Nicht-HTTP-Methoden wie JavaScript-Document.cookie Verweise können nicht auf das Cookie zugreifen. Diese Option hilft, Cookie-Diebstahl aufgrund von Cross-Site Scripting zu verhindern.

    HINWEIS:

    Sie können die Option HttpOnly nicht verwenden, wenn eine Webanwendung Zugriff auf Cookie-Inhalte benötigt, indem Sie ein clientseitiges Skript wie JavaScript oder ein clientseitiges Java-Applet verwenden. Sie können die in diesem Dokument erwähnte Methode verwenden, um nur die servergenerierten Cookies und nicht die von der Citrix ADC-Appliance generierten Cookies neu zu schreiben. Zum Beispiel AppFirewall, Persistenz, VPN-Sitzungscookies und so weiter.

  • Sicher - Diese Option in einem Cookie bewirkt, dass die Webbrowser nur den Cookie-Wert zurückgeben, wenn die Übertragung durch SSL verschlüsselt wird. Diese Option kann verwendet werden, um Cookie-Diebstahl durch Verbindungsabhörung zu verhindern.

HINWEIS:

Das folgende Verfahren gilt nicht für virtuelle VPN-Server.

So konfigurieren Sie die Citrix ADC-Appliance so, dass die Secure- und HttpOnly-Flags für einen vorhandenen virtuellen HTTP-Server mithilfe von CLI erzwingen

  1. Erstellen Sie eine Rewrite-Aktion.

    Dieses Beispiel ist so konfiguriert, dass sowohl Secure- als auch HttpOnly-Flags festgelegt werden. Wenn einer fehlt, ändern Sie es nach Bedarf für andere Kombinationen.

    add rewrite action act_cookie_Secure replace_all http.RES.full_Header ""Secure; HttpOnly; path=/"" -search "regex(re!(path=/\\; Secure; HttpOnly)|(path=/\\; Secure)|(path=/\\; HttpOnly)|(path=/)!)"
    <!--NeedCopy-->
    

    Diese Richtlinie ersetzt alle Instanzen von “path=/”, “path=/; Secure”, “path=/; Secure; HttpOnly” und “path=/; HttpOnly” durch “Secure; HttpOnly; path=/”. Dieser reguläre Ausdruck (Regex) schlägt fehl, wenn der Fall nicht übereinstimmt.

  2. Erstellen Sie eine Rewriterichtlinie, um die Aktion auszulösen.

    add rewrite policy rw_force_secure_cookie "http.RES.HEADER("Set-Cookie").EXISTS" act_cookie_Secure
    <!--NeedCopy-->
    
  3. Binden Sie die Rewriterichtlinie an den zu sichernden virtuellen Server. Wenn Secure Option verwendet wird, muss ein virtueller SSL-Server verwendet werden.

    bind lb vserver mySSLVServer -policyName rw_force_secure_cookie -priority 100 -gotoPriorityExpression NEXT -type RESPONSE
    <!--NeedCopy-->
    

Beispiele:

Das folgende Beispiel zeigt das Cookie, bevor das HttpOnly-Flag gesetzt wird

Set-Cookie: CtxsAuthId=C5614491; path=/Citrix/ProdWeb
<!--NeedCopy-->

Das folgende Beispiel zeigt das Cookie nach dem Setzen des Flag HttpOnly

Set-Cookie: CtxsAuthId=C5614491; Secure; HttpOnly; path=/Citrix/ProdWeb/
<!--NeedCopy-->

So konfigurieren Sie die Citrix ADC-Appliance so, dass die Secure- und HttpOnly-Flags für einen vorhandenen virtuellen HTTP-Server über die grafische Benutzeroberfläche erzwingen

  1. Navigieren Sie zu AppExpert > Rewrite > Aktionenund klicken Sie auf Hinzufügen, um eine neue Neuschreibaktion hinzuzufügen.

    Konfigurieren von Rewrite-Aktionen

  2. Navigieren Sie zu AppExpert > Rewrite > Richtlinienund klicken Sie auf Hinzufügen, um eine neue Rewriterichtlinie hinzuzufügen.

    Rewriterichtlinie  konfigurieren

  3. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server, und binden Sie dann die Rewriterichtlinie (Antwort) an den entsprechenden virtuellen SSL-Server.

    Binden einer Rewriterichtlinie

Anwendungsfall: So erzwingen Sie Secure- und HttpOnly-Cookie-Optionen für Websites, die die Citrix ADC-Appliance verwenden