Citrix ADC

Caso de uso: Cómo forzar las opciones de cookie Secure y HttpOnly para sitios web que utilizan el dispositivo Citrix ADC

Los administradores web pueden forzar el Secure o HttpOnly, o ambos indicadores del ID de sesión y las cookies de autenticación generadas por las aplicaciones web. Puede modificar los encabezados de Set-cookie para incluir estas dos opciones mediante un servidor virtual de equilibrio de carga HTTP y reescritura de directivas en un dispositivo Citrix ADC.

  • HttpOnly: Esta opción de una cookie hace que los exploradores web devuelvan la cookie mediante únicamente el protocolo HTTP o HTTPS. Los métodos que no son HTTP, como las referencias de document.cookie JavaScript, no pueden acceder a la cookie. Esta opción ayuda a evitar el robo de cookies debido a los scripts entre sitios.

    NOTA

    No puede utilizar la opción HttpOnly cuando una aplicación web requiere acceso al contenido de las cookies mediante un script del lado del cliente, como JavaScript o un applet Java del lado del cliente. Puede utilizar el método mencionado en este documento para reescribir solo las cookies generadas por el servidor y no las cookies generadas por el dispositivo Citrix ADC. Por ejemplo, AppFirewall, persistencia, cookies de sesión VPN, etc.

  • Seguro : esta opción en una cookie hace que los exploradores web devuelvan solo el valor de la cookie cuando la transmisión está cifrada por SSL. Esta opción se puede utilizar para evitar el robo de cookies a través del espionaje de conexión.

NOTA

El siguiente procedimiento no se aplica a los servidores virtuales VPN.

Para configurar el dispositivo Citrix ADC para forzar los indicadores Secure y HttpOnly para un servidor virtual HTTP existente mediante la CLI

  1. Crea una acción de reescritura.

    Este ejemplo está configurado para establecer indicadores Secure y HttpOnly. Si falta alguno de ellos, modifíquelo según sea necesario para otras combinaciones.

    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-->
    

    Esta directiva reemplaza todas las instancias de “path=/”, “path=/; Secure”, “path=/; Secure; HttpOnly” y “path=/; HttpOnly” por “Secure; HttpOnly; path=/”. Esta expresión regular (regex) falla si las mayúsculas no coinciden.

  2. Cree una directiva de reescritura para desencadenar la acción.

    add rewrite policy rw_force_secure_cookie "http.RES.HEADER("Set-Cookie").EXISTS" act_cookie_Secure
    <!--NeedCopy-->
    
  3. Vincule la directiva de reescritura al servidor virtual que quiere proteger. Si se utiliza la opción Secure, se debe utilizar un servidor virtual SSL.

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

Ejemplos:

En el ejemplo siguiente se muestra la cookie antes de configurar el indicador HttpOnly.

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

En el ejemplo siguiente se muestra la cookie después de configurar el indicador HttpOnly.

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

Para configurar el dispositivo Citrix ADC para forzar los indicadores Secure y HttpOnly para un servidor virtual HTTP existente mediante la GUI

  1. Vaya a AppExpert > Reescritura > Accionesy haga clic en Agregar para agregar una nueva acción de reescritura.

    Configurar acciones de reescritura

  2. Vaya a AppExpert > Reescritura > Directivasy haga clic en Agregar para agregar una nueva directiva de reescritura.

    Configurar la directiva de reescritura

  3. Vaya a Administración del tráfico > Equilibrio de carga > Servidores virtualesy, a continuación, vincule la directiva de reescritura (respuesta) al servidor virtual SSL correspondiente.

    Directiva de reescritura de enlaces

Caso de uso: Cómo forzar las opciones de cookie Secure y HttpOnly para sitios web que utilizan el dispositivo Citrix ADC