Protección de Server
La protección de Alteryx Server es la práctica de cambiar la configuración del servidor en las capas de red, SO y aplicación para minimizar su superficie de ataque y maximizar la resistencia a los intentos de penetración. Sigue estas recomendaciones para proteger la red y el SO:
Instala la última versión y el parche de Server.
Configura Server para la operación HTTPS usando un certificado X.509 (TLS/SSL) firmado por CA. Consulta Configurar SSL/TLS para Server con el fin de obtener más información.
Protege y asegura el sistema operativo y la base de datos.
Consulta la página de ayuda Administrar usuarios y grupos para obtener más información.
Sigue estas recomendaciones para asegurar la aplicación:
Revisa los procedimientos de protección de la configuración de aplicaciones web a continuación y aplica cualquiera que sea relevante para tu entorno y políticas organizativas.
Revisa los procedimientos de protección de la administración de Server a continuación y aplica los que sean relevantes para tu entorno y las políticas organizativas.
Cuentas anónimas y de invitados
Puedes manejar cuentas anónimas y de invitados a través de la configuración de administrador. Te recomendamos que sigas estas instrucciones:
Deshabilita el registro de usuario. Habilita el acceso a través de la autenticación de Windows (IWA) o crea cuentas como administrador.
Considera si los usuarios no registrados podrán ejecutar flujos de trabajo de Alteryx Gallery público.
Consulta la página de ayuda Administrar usuarios y grupos para obtener más información.
Procedimientos de protección de la administración de Server
Esta configuración controla el comportamiento de varios aspectos de la funcionalidad de Server relacionados con los permisos y otras opciones que pueden afectar la postura de seguridad general de la aplicación.
La configuración del modo de ejecución de Gallery puede proporcionar controles de seguridad mejorados sobre la ejecución del flujo de trabajo de acciones potencialmente maliciosas. De forma predeterminada, el modo de ejecución de Gallery se establece en Sin restricciones, lo que significa que no hay restricciones y que cualquier flujo de trabajo puede ejecutarse. La configuración de este ajuste en Semiseguro o Seguro protegerá aún más el entorno de Server, ya que impide que los flujos de trabajo lean o escriban datos en una ubicación que no se encuentra dentro del directorio de preparación del flujo de trabajo, o que se ejecuten flujos de trabajo que contengan herramientas restringidas. Esta es una configuración global que se aplica a todo el entorno de Server, pero los administradores pueden anularlo con excepciones a nivel de flujo de trabajo individual. Consulta la página de ayuda Interfaz de usuario de Server para obtener más información sobre el modo de ejecución de Gallery.
Hay varios ajustes en la página Configuración, a la que pueden acceder los usuarios que han iniciado sesión en Server con privilegios de administrador (Perfil > Administrador). En la sección Configuración de usuario:
Establece el menú desplegable Rol predeterminado en “Sin acceso” para evitar que los usuarios que puedan iniciar sesión mediante un sistema de autenticación externo (SSO basado en SAML o autenticación integrada de Windows) tengan una vista predeterminada o ejecuten acceso dentro de Server. (Los usuarios deben recibir permisos explícitos que contengan criterios más allá de la mera presencia en el dominio de autenticación externa).
Deshabilita la opción Usuarios pueden registrarse a fin de evitar que los usuarios no registrados se registren para nuevas cuentas (solo para la autenticación integrada; Server no puede agregar cuentas a un sistema de autenticación externo).
Deshabilita la opción Los usuarios no registrados pueden ejecutar flujos de trabajo públicos en la página de inicio para evitar que los clientes anónimos ejecuten flujos de trabajo publicados en la página de inicio.
Login Timeout
As of 22.1 you can configure login attempt timeouts by setting the Enforce Login Attempt Timeout switch (Admin > Settings > Configuration > Security Settings > Enforce Login Attempt Timeout).
El equipo de administración de cada cliente maneja el proceso de asignación de derechos de usuario.
Los roles incluyen Visualizador, Creador y Administrador. Ve a la página de ayuda Roles de usuarios y permisos para obtener más información sobre los roles y permisos.
Seguridad entre Server y la capa de persistencia (MongoDB)
Las conexiones entre Server y MongoDB están protegidas por las siguientes medidas:
Las conexiones pasan a través del controlador del cliente de Mongo (por defecto, esto no cifra su tráfico).
Mongo empresarial admite TLS/SSL (consulta https://docs.mongodb.com/v3.0/core/security-transport-encryption/), pero estas conexiones no se admiten en la opción MongoDB integrado que se envía con Server.
Si se requieren conexiones de base de datos cifradas, considera cambiar a Mongo administrado por el usuario con una instalación Mongo empresarial o el SaaS MongoDB Atlas.
También puedes instalar el reenvío de conexión SSH o una conexión VPN entre los componentes de Alteryx Server y el servidor de base de datos; hacer esto está fuera del alcance de esta guía.
Ataques POODLE
Alteryx Designer y Server han admitido TLS 1.2 desde la versión 11.5. Asegúrate de que los protocolos vulnerables estén deshabilitados en Schannel si los ataques POODLE son una preocupación.
Procedimientos de protección de la configuración de aplicaciones web
Estos ajustes afectan la forma en que la GUI de front-end de Server interactúa con los clientes HTTP/S en la red.
La instalación predeterminada de Server utiliza HTTP (sin cifrar) para simplificar la instalación y configuración. Recomendamos implementar certificados X.509 y habilitar SSL/TLS (HTTPS) para Server con el fin de cifrar la comunicación entre los clientes y Server. Esto confirma la identidad de Server y protege la integridad y confidencialidad de las sesiones de los usuarios. Deberás crear una solicitud de certificado X.509 (en la que deberás especificar cualquier nombre de host estilo FQDN que los clientes usarán para navegar por Server) y tener esa solicitud firmada por una autoridad de certificación en la que confíe tu organización. Visita Configurar SSL/TLS para Server a fin de obtener los pasos de cómo hacerlo.
El encabezado de solicitud HTTP “Host” lo envía un cliente HTTP y contiene el nombre de host de Internet y el número de puerto al que el cliente intentó conectarse originalmente.
Si has iniciado sesión en Server como administrador, puedes especificar los hosts que desea permitir que Server sirva en el campo Hosts permitidos, que se encuentra en Administrador > Ajustes > Configuración, en la sección Seguridad.
Usa esto como medida de seguridad para prevenir ataques al encabezado del host HTTP. Ingresa los nombres de dominio completo (host.dominio
) uno por línea. Consulta la página de ayuda Configuración de Alteryx Server para obtener más información.
Server envía encabezados de respuesta HTTP cuando responde a las solicitudes. Puedes establecer encabezados personalizados o cambiar los valores predeterminados de Server para encabezados existentes mediante la incorporación de estrofas a la sección <httpHeaders> de %ProgramFiles%\Alteryx\bin\server\config\alteryx.config.
A continuación, se muestra el conjunto de encabezados utilizados internamente a fin de proteger Server para las pruebas de penetración periódicas (parte de nuestro SDLC). Pueden no ser compatibles con todos los clientes. Dependiendo de las necesidades y políticas de tu organización, se recomienda actualizar o adaptar algunos valores para tu entorno.
<httpHeaders> <header name="Cache-Control" value="no-store; max-age=0" /> <header name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains" /> <header name="X-Content-Type-Options" value="nosniff" /> <header name="Content-Security-Policy" value="default-src 'self'; img-src 'self' data:; font-src 'self' data:; script-src 'self' 'unsafe-eval' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; frame-ancestors 'self'; form-action 'self'" /> <header name="Access-Control-Allow-Origin" value="https://server.domain.tld" /> <header name="Vary" value="Origin" /> <header name="Referrer-Policy" value="no-referrer; strict-origin-when-cross-origin" /> </httpHeaders>