Fallo común WCAG 2.2
F109Pedir contraseñas o códigos en casillas sueltas o por caracteres
Nombre oficial en el W3C: Fallo de los criterios de conformidad 3.3.8 y 3.3.9 debido a impedir que las contraseñas o los códigos se introduzcan en el formato en que se crearon
En pocas palabras
El error es obligar a escribir una contraseña o un código en un formato distinto al original. Por ejemplo, una casilla para cada cifra donde no se puede pegar, o pedir «el segundo y el quinto carácter». Así no sirve el gestor de contraseñas ni copiar y pegar, y hay que memorizar o copiar a mano.
Por qué es importante
Recordar una contraseña o copiarla carácter a carácter es una prueba de memoria. Las personas con dislexia, problemas de memoria o discapacidad intelectual pueden no superarla.
Para evitarlo, muchas usan un gestor de contraseñas (programa que guarda y rellena las claves) o copian y pegan. Si el formulario lo impide, no pueden entrar en su banco, en la sede electrónica o en su tienda online.
Cómo evitarlo
- Pida la contraseña o el código en un solo campo que acepte pegar el texto completo.
- No bloquee el pegado ni el autorrelleno. Use
autocomplete="current-password"en la contraseña yautocomplete="one-time-code"en los códigos de un solo uso. - Si prefiere casillas separadas para el código, haga que al pegarlo en la primera se rellenen solas todas las demás.
- No pida caracteres sueltos de la contraseña («el tercero y el último»). Tampoco la construya con un desplegable por carácter.
- Si mantiene alguno de estos sistemas, ofrezca otro acceso que no exija memorizar: un enlace por correo, una llave de acceso (passkey) o un certificado digital.
Cómo comprobarlo
- Localizar todos los campos de contraseña y de código: inicio de sesión, verificación en dos pasos, firma de operaciones.
- Copiar la contraseña o el código completo y pegarlo. Probar también el gestor de contraseñas del navegador.
- Comprobar que queda bien escrito de una vez, en el mismo formato en que se creó.
- Si no es posible, buscar otro método de acceso que no dependa de recordar ni copiar a mano. Si no lo hay, hay fallo.
Ejemplo
Código correcto: un único campo para el código, que admite pegar y el autorrelleno.
<label for="codigo">Código de verificación (6 cifras)</label>
<input id="codigo" type="text" inputmode="numeric"
autocomplete="one-time-code" maxlength="6">
Para saber más, en nuestro blog
-
¿Es la autenticación accesible menos segura?Como afecta la accesibilidad a la seguridad cuando iniciamos sesión en una web, y las pautas a seguir según la WCAG 2.2
Ver el texto completo del W3C (traducción al español)
Esta es una traducción no oficial al español de la técnica F109 de Techniques for WCAG 2.2, del W3C. Puede contener errores. El único documento oficial y normativo es la versión original en inglés, publicada en el sitio web del W3C.
Aplicabilidad
Todas las tecnologías que requieran autenticación.
Descripción
Exigir a los usuarios que se autentiquen introduciendo una contraseña o un código en un formato distinto de aquel en el que se creó originalmente supone un fallo de los criterios de conformidad 3.3.8 Autenticación accesible (mínimo) y 3.3.9 Autenticación accesible (mejorada), salvo que existan métodos de autenticación alternativos. La cadena que hay que introducir puede ser una contraseña, un código de verificación o cualquier cadena de caracteres que el usuario tenga que recordar o anotar para autenticarse.
Si se obliga al usuario a introducir caracteres individuales en varios campos de manera que no pueda pegar la contraseña en una sola acción, se impide el uso de un gestor de contraseñas o el pegado desde una copia local de la contraseña. Esto significa que los usuarios no pueden evitar la transcripción, lo que da lugar a una prueba de función cognitiva. Se aplica tanto si los usuarios deben introducir todos los caracteres de la cadena como si solo deben introducir una parte.
Ejemplos
Estos ejemplos impedirían que el usuario introdujese una contraseña o un código en el mismo formato en que se creó originalmente:
- Un grupo de campos que pide al usuario «Introduzca el 2.º, el 6.º y el último carácter de su contraseña», con campos de entrada separados para cada carácter.
- Un grupo de campos que pide al usuario introducir cada dígito de un código de verificación en un campo distinto (salvo que el usuario pueda pegar el código completo en el primer campo y los demás se rellenen automáticamente).
- Un grupo de campos de contraseña compuesto por elementos
<select>que obliga al usuario a seleccionar cada carácter de una contraseña de longitud fija en listas desplegables individuales.
Pruebas
Procedimiento
Para cada campo de formulario que acepte la introducción de una contraseña o un código:
- Comprobar que el campo de entrada permite al usuario introducir la contraseña o el código completos en el formato en que se crearon originalmente.
- Si el paso anterior no es verdadero, comprobar si existe un método de autenticación alternativo que satisfaga los criterios de conformidad 3.3.8 Autenticación accesible (mínimo) o 3.3.9 Autenticación accesible (mejorada) (por ejemplo, un método de autenticación que no dependa de una prueba de función cognitiva).
Resultados esperados
- Si las comprobaciones n.º 1 y n.º 2 son ambas falsas, se cumple esta condición de fallo y el contenido falla el criterio de conformidad.
Cómo lo comprobamos en ADDAW
Este error es uno de los que buscamos en cada auditoría de ADDAW. Se lo entregamos con capturas y la forma de corregirlo.
Basado en la técnica F109 del W3C (WCAG 2.2). Explicación y ejemplos: ADDAW. Traducción no oficial del texto del W3C © W3C, licencia de documentos del W3C. ¿Ha visto un error? Escríbanos.