Bloquear los Filtros de color en Windows (GPO y Registro): guía completa con Intune y el atajo Win+Ctrl+C

¿Necesitas impedir que en tu organización alguien active los Filtros de color de Windows por accidente o por curiosidad? Aquí tienes una guía práctica y accionable que combina registro, GPO/Intune y control de la app Configuración para bloquearlos de forma efectiva sin romper escenarios de accesibilidad legítimos.

Índice

Resumen ejecutivo

No existe una directiva de GPO nativa para activar o desactivar directamente los Filtros de color. Aun así, puedes conseguir el objetivo combinando tres controles complementarios:

  • Forzar estado apagado por registro (HKCU): Active=0 en HKCU\Software\Microsoft\ColorFiltering.
  • Desactivar el atajo Win+Ctrl+C para evitar activaciones accidentales: HotkeyEnabled=0 en el mismo contenedor.
  • Ocultar la página de Configuración de Filtros de color con la directiva “Settings Page Visibility”: hide:easeofaccess-colorfilter.

Aplicado en conjunto, el usuario no podrá encender los filtros desde la UI, no tendrá el atajo global y, si los activa por otros medios, las preferencias de usuario y la remediación periódica los devolverán a apagado.

Qué son los Filtros de color y por qué bloquearlos

Los Filtros de color forman parte de “Accesibilidad” en Windows y modifican la representación cromática del sistema (p. ej., escala de grises o filtros para daltonismo). Aunque útiles para ciertos usuarios, en entornos corporativos, aulas, kioscos o laboratorios pueden generar incidentes de soporte confusos, diagnósticos erróneos de “pantalla en blanco y negro” y diferencias de apariencia entre sesiones compartidas. Bloquear su activación reduce tickets y asegura una experiencia homogénea.

Matriz de control recomendada

ControlVía técnicaÁmbitoProsContras
Forzar apagadoRegistro (HKCU) Active=0Por usuarioSimple y reversible; fácil con GPP/IntuneDebe aplicarse a cada cuenta que inicia sesión
Quitar atajoRegistro (HKCU) HotkeyEnabled=0Por usuarioEvita activaciones accidentalesNo impide cambios vía UI si está visible
Ocultar ConfiguraciónGPO/Intune “Settings Page Visibility”Equipo o usuarioReduce superficie de cambioRequiere distribuir y probar el ADMX o catálogos

Forzar “Filtros de color” apagado por registro

Los Filtros de color se guardan por usuario (HKCU). La clave principal es:

HKEYCURRENTUSER\Software\Microsoft\ColorFiltering
  Active (REG_DWORD) = 0   <-- fuerza filtros apagados
  FilterType (REG_DWORD)   <-- opcional; define el tipo cuando se activan
  HotkeyEnabled (REG_DWORD) <-- ver sección del atajo

Valores útiles

NombreTipoValorDescripción
ActiveREG_DWORD0 / 10 apaga los Filtros de color; 1 los enciende.
FilterTypeREG_DWORD0..50 Escala de grises; 1 Invertido; 2 Escala de grises invertida; 3 Deuteranopia; 4 Protanopia; 5 Tritanopia.
HotkeyEnabledREG_DWORD0 / 10 deshabilita Win+Ctrl+C; 1 lo habilita.

Para coherencia con otras áreas de Accesibilidad, algunos entornos también limpian el valor:

HKEYCURRENTUSER\Software\Microsoft\Windows NT\CurrentVersion\Accessibility
  Configuration (REG_SZ) = ""  <-- opcional

Aplicarlo con Group Policy Preferences (GPP)

  1. Abre la Consola de Administración de Directivas de Grupo (GPMC) y crea/edita un GPO vinculado a la OU de usuarios.
  2. Navega a Configuración de usuario › Preferencias › Configuración de Windows › Registro.
  3. Crea tres elementos de Registro con Action = Update:
    • Hive: HKCU; Key Path: Software\Microsoft\ColorFiltering; Value name: Active; Type: REG_DWORD; Value data: 0.
    • Hive: HKCU; Key Path: Software\Microsoft\ColorFiltering; Value name: HotkeyEnabled; Type: REG_DWORD; Value data: 0.
    • (Opcional) Hive: HKCU; Key Path: Software\Microsoft\Windows NT\CurrentVersion\Accessibility; Value name: Configuration; Type: REG_SZ; Value data: (cadena vacía).
  4. Importante: deja Apply once and do not reapply desmarcado para que, si el usuario cambia algo, GPP lo restituya en el siguiente inicio de sesión.
  5. Opcional: usa Item-level targeting para excluir grupos de exención (por ejemplo, personal con necesidades de accesibilidad).

Aplicarlo con Intune

Tienes dos enfoques principales según tu preferencia de administración:

Script de dispositivo ejecutado en contexto de usuario

  1. En Intune → DevicesWindowsPowerShell scripts, crea un script.
  2. Activa Run this script using the logged-on credentials para tocar HKCU del usuario activo.
  3. Usa un script como este:
New-Item -Path 'HKCU:\Software\Microsoft\ColorFiltering' -Force | Out-Null
New-ItemProperty -Path 'HKCU:\Software\Microsoft\ColorFiltering' -Name Active -Value 0 -PropertyType DWord -Force | Out-Null
New-ItemProperty -Path 'HKCU:\Software\Microsoft\ColorFiltering' -Name HotkeyEnabled -Value 0 -PropertyType DWord -Force | Out-Null
New-Item -Path 'HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Accessibility' -Force | Out-Null
New-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows NT\CurrentVersion\Accessibility' -Name Configuration -Value '' -PropertyType String -Force | Out-Null

Proactive Remediations (para devolver el estado si cambia)

Las Remediaciones Proactivas ejecutan los scripts como System. Para operar sobre HKCU, apunta al SID del usuario con sesión iniciada (montado en HKEY_USERS). Plantillas de ejemplo:

Detección (devuelve 0 si cumple, 1 si no):

$loggedOn = (Get-CimInstance Win32_ComputerSystem).Username
if (-not $loggedOn) { exit 1 }
$sid = (New-Object System.Security.Principal.NTAccount($loggedOn)).Translate([System.Security.Principal.SecurityIdentifier]).Value
$base = "Registry::HKEY_USERS\$sid\Software\Microsoft\ColorFiltering"
try {
  $active = (Get-ItemProperty -Path $base -Name Active -ErrorAction Stop).Active
  $hotkey = (Get-ItemProperty -Path $base -Name HotkeyEnabled -ErrorAction Stop).HotkeyEnabled
  if ($active -eq 0 -and $hotkey -eq 0) { exit 0 } else { exit 1 }
} catch { exit 1 }

Remediación:

$loggedOn = (Get-CimInstance Win32_ComputerSystem).Username
if ($loggedOn) {
  $sid = (New-Object System.Security.Principal.NTAccount($loggedOn)).Translate([System.Security.Principal.SecurityIdentifier]).Value
  $cf = "Registry::HKEY_USERS\$sid\Software\Microsoft\ColorFiltering"
  New-Item -Path $cf -Force | Out-Null
  New-ItemProperty -Path $cf -Name Active -Value 0 -PropertyType DWord -Force | Out-Null
  New-ItemProperty -Path $cf -Name HotkeyEnabled -Value 0 -PropertyType DWord -Force | Out-Null
  $acc = "Registry::HKEY_USERS\$sid\Software\Microsoft\Windows NT\CurrentVersion\Accessibility"
  New-Item -Path $acc -Force | Out-Null
  New-ItemProperty -Path $acc -Name Configuration -Value '' -PropertyType String -Force | Out-Null
}

Nota: si gestionas dispositivos multiusuario o VDI no persistente, este enfoque ayuda a “auto-curar” los cambios de los usuarios al ejecutarse de forma periódica.

Preconfigurar nuevos perfiles de usuario (opcional)

Para que los nuevos perfiles nazcan ya con los valores deseados, puedes modificar el perfil por defecto cargando su hive:

REM Ejecutar con privilegios elevados
reg load HKU\TempDefault C:\Users\Default\NTUSER.DAT
reg add "HKU\TempDefault\Software\Microsoft\ColorFiltering" /v Active /t REG_DWORD /d 0 /f
reg add "HKU\TempDefault\Software\Microsoft\ColorFiltering" /v HotkeyEnabled /t REG_DWORD /d 0 /f
reg add "HKU\TempDefault\Software\Microsoft\Windows NT\CurrentVersion\Accessibility" /v Configuration /t REG_SZ /d "" /f
reg unload HKU\TempDefault

Esto no sustituye la aplicación por GPP/Intune (que seguirá siendo necesaria si quieres mantener el estado forzado), pero reduce el tiempo de convergencia en el primer inicio.

Desactivar el atajo de teclado Win+Ctrl+C

Para evitar que un gesto involuntario active los filtros, deshabilita el atajo global con:

HKEYCURRENTUSER\Software\Microsoft\ColorFiltering
  HotkeyEnabled (REG_DWORD) = 0

Distribúyelo con GPP (HKCU) o con Intune (script en contexto de usuario o remediación como se mostró). Ejemplo de archivo .REG para usuarios:

Windows Registry Editor Version 5.00

\[HKEY\CURRENT\USER\Software\Microsoft\ColorFiltering]
"Active"=dword:00000000
"HotkeyEnabled"=dword:00000000

\[HKEY\CURRENT\USER\Software\Microsoft\Windows NT\CurrentVersion\Accessibility]
"Configuration"="" </code></pre>

<h2>Ocultar la página de Configuración de Filtros de color</h2>
<p>Para reducir la superficie de cambio, oculta la página específica de Configuración usando la directiva “Settings Page Visibility”. El identificador de la página de Filtros de color es <code>easeofaccess-colorfilter</code>, accesible normalmente vía <code>ms-settings:easeofaccess-colorfilter</code>.</p>

<h3>GPO (Plantillas administrativas)</h3>
<ol>
  <li>Abre tu GPO (en Equipo o Usuario).</li>
  <li>Ve a <strong>Plantillas administrativas &rsaquo; Panel de control &rsaquo; Settings Page Visibility</strong>.</li>
  <li>Configura la política en <strong>Habilitada</strong> y en el cuadro de texto pon:
    <pre><code>hide:easeofaccess-colorfilter</code></pre>
  </li>
</ol>
<p>Internamente, esto escribe el valor <code>SettingsPageVisibility</code> (REG_SZ) en:</p>
<ul>
  <li><code>HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer</code> (si aplicas al usuario)</li>
  <li><code>HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer</code> (si aplicas al equipo)</li>
</ul>

<h3>Intune (Settings Catalog)</h3>
<ol>
  <li>Crea un perfil de configuración &rarr; <em>Settings catalog</em>.</li>
  <li>Añade la categoría <strong>Administrative Templates &rsaquo; Control Panel</strong>.</li>
  <li>Habilita <strong>Settings Page Visibility</strong> y establece <code>hide:easeofaccess-colorfilter</code>.</li>
</ol>
<p><em>Consejo:</em> si además quieres una postura <em>allowlist</em>, puedes usar <code>showonly:</code> con una lista permitida de páginas. Es más restrictivo y requiere pruebas exhaustivas.</p>

<h2>Validación, pruebas y auditoría</h2>
<p>Comprueba que tus controles funcionan antes de desplegar a gran escala:</p>
<ol>
  <li>Inicia sesión con un usuario del ámbito de la política.</li>
  <li>Abre PowerShell y ejecuta:
    <pre><code>Get-ItemProperty -Path HKCU:\Software\Microsoft\ColorFiltering | Select-Object Active,HotkeyEnabled,FilterType
Get-ItemProperty -Path HKCU:\Software\Microsoft\Windows` NT\CurrentVersion\Accessibility | Select-Object Configuration
Debes ver Active : 0 y HotkeyEnabled : 0.

Prueba el atajo Win+Ctrl+C: no debe cambiar nada.
Abre la URI ms-settings:easeofaccess-colorfilter: debe mostrarse bloqueada/no disponible si aplicaste “Settings Page Visibility”.
Si usas Remediaciones Proactivas, fuerza su ejecución y revisa el último estado (compliant/remediated) en el portal.

Excepciones y accesibilidad responsable

No bloquees la accesibilidad para quienes la necesitan. Recomendaciones:

  • Crea un grupo de seguridad “Accesibilidad_Exentos”.
  • En GPP, usa Item-level targeting para no aplicar a miembros de ese grupo; o bien deniega “Apply group policy” en la ACL del GPO para ese grupo.
  • En Intune, usa grupos de inclusión/exclusión para scripts y perfiles de configuración.
  • Documenta el proceso de solicitud de exención y guarda trazabilidad.

Errores comunes y cómo evitarlos

  • Confiar solo en la UI: ocultar la página sin tocar HKCU evita cambios desde Configuración, pero no impide que un usuario avanzado modifique el registro. Combina los tres enfoques.
  • Aplicar solo a “Equipo”: Active y HotkeyEnabled son valores por usuario. No basta con una GPO al equipo.
  • VDI no persistente: recuerda aplicar en cada inicio de sesión. Usa GPP (no “apply once”) o Remediaciones periódicas.
  • Olvidar las excepciones: define un mecanismo claro para usuarios con necesidades de accesibilidad.
  • No probar “showonly”: si usas showonly:, prueba a fondo; puedes ocultar páginas críticas involuntariamente.

Plantillas listas para copiar

.REG — políticas por usuario

Windows Registry Editor Version 5.00

; Filtros de color apagados y sin atajo
\[HKEY\CURRENT\USER\Software\Microsoft\ColorFiltering]
"Active"=dword:00000000
"HotkeyEnabled"=dword:00000000

; Coherencia Accesibilidad (opcional)
\[HKEY\CURRENT\USER\Software\Microsoft\Windows NT\CurrentVersion\Accessibility]
"Configuration"="" 

.REG — ocultar página de Configuración (usuario)

Windows Registry Editor Version 5.00

\[HKEY\CURRENT\USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"SettingsPageVisibility"="hide\:easeofaccess-colorfilter" 

reg.exe — script por lotes (elevado, por usuario conectado)

@echo off
reg add "HKCU\Software\Microsoft\ColorFiltering" /v Active /t REG_DWORD /d 0 /f
reg add "HKCU\Software\Microsoft\ColorFiltering" /v HotkeyEnabled /t REG_DWORD /d 0 /f
reg add "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Accessibility" /v Configuration /t REG_SZ /d "" /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v SettingsPageVisibility /t REG_SZ /d "hide:easeofaccess-colorfilter" /f

PowerShell — comprobación rápida para soporte

$cf = Get-ItemProperty -Path HKCU:\Software\Microsoft\ColorFiltering -ErrorAction SilentlyContinue
if ($null -eq $cf) { "ColorFiltering no encontrado en HKCU"; exit }
"Active=$($cf.Active)  HotkeyEnabled=$($cf.HotkeyEnabled)  FilterType=$($cf.FilterType)"

Implementación en entornos compartidos y VDI

En aulas, kioscos o VDI multisesión:

  • Loopback “Merge”: si usas GPO, habilita el procesamiento de bucle invertido en las máquinas objetivo para que las Preferencias de Usuario se apliquen basadas en el equipo.
  • Inicio de sesión: asegura que los elementos GPP se ejecutan en cada logon y que no tienen activado “Apply once”.
  • Remediaciones: programa una remediación cada X horas para “curar” cambios manuales.
  • Perfiles errantes/FSLogix: los valores viajan con el perfil; por eso la remediación periódica es clave.

Preguntas frecuentes

¿Existe un ajuste equivalente en HKLM para forzarlo por equipo?
No. El estado de los Filtros de color es por usuario (HKCU). Puedes, no obstante, aplicar políticas al equipo para ocultar la página con “Settings Page Visibility” y usar técnicas de remediación para cada usuario que inicie sesión.

¿Necesito reiniciar para que Active=0 surta efecto?
Normalmente no; el cambio es inmediato. Si no ves efecto, cierra sesión/inicia sesión o reinicia el proceso Explorer.

¿Puedo impedir el atajo a nivel de máquina?
No hay una directiva nativa para Win+Ctrl+C global; deshabilítalo en HKCU para cada usuario con GPP/Intune.

¿Qué pasa si un usuario cambia FilterType?
Es inocuo mientras Active=0. Si lo encienden, FilterType determina el filtro. Puedes restablecerlo a un valor específico si lo deseas.

¿Hay ajustes MDM específicos para “Color Filtering”?
No hay una directiva MDM documentada para su estado. Sí puedes usar ADMX/Settings Catalog para “Settings Page Visibility”.

Buenas prácticas de operación

  • Documenta claramente la justificación de control (consistencia visual, kioscos, exámenes, etc.).
  • Comunica a Service Desk los síntomas típicos (“pantalla en blanco y negro”) y el procedimiento de verificación.
  • Monitorea el cumplimiento con reportes de GPP/Intune, y ajusta la frecuencia de remediación según el riesgo.
  • Versiona tus GPO/Perfiles de Intune con etiquetas de cambio para auditoría.

En una línea

No hay GPO nativa para “bloquear Filtros de color”, pero puedes hacerlo de manera efectiva combinando: registro (Active=0), desactivar atajo (HotkeyEnabled=0) y ocultar la página de Configuración con “Settings Page Visibility”.

Referencias consultadas

  1. Locking down Color Filters — Microsoft Q&A.
  2. Enable or Disable Color Filters in Windows 11 — Windows 11 Forum.
  3. Enable or Disable Color Filters Win+Ctrl+C Keyboard Shortcut — Windows 11 Forum.
  4. How to disable Color filters hotkey — Stack Overflow.
  5. Configure the Settings Page Visibility in Windows — Microsoft Learn.
  6. List of Shortcuts to Directly Open Pages (Windows) — NinjaOne Blog.
Índice