Сеансовые таймауты: незамеченный барьер доступности в дизайне аутентификации — Smashing Magazine
Перевод статьи: Session Timeouts: The Overlooked Accessibility Barrier In Authentication Design — Smashing Magazine
10 min readДоступность, Дизайн, Юзабилити, UXПоделиться в Twitter, LinkedIn
Плохо продуманные сеансовые таймауты — это больше, чем просто техническое неудобство. Они могут превращаться в серьезные барьеры доступности, которые прерывают важные онлайн-задачи, особенно у людей с инвалидностью. Ниже — как внедрить внимательное управление сеансами, которое улучшает удобство использования, снижает уровень раздражения и помогает создать более доступный и уважительный веб.
Для веб-профессионалов управление сеансами — это баланс между пользовательским опытом, кибербезопасностью и расходом ресурсов. Для людей с инвалидностью это нечто большее — барьер на пути к покупке цифровых билетов, прокрутке в социальных сетях или подаче заявки на кредит онлайн. Доступность сеансовых таймаутов может стать разницей между плохим днем и хорошим днем для людей с инвалидностью.
Для многих ситуация знакома: вы успеваете продвинуться в важной форме наполовину, а затем вас без предупреждения выбрасывает обратно на экран входа. Такие инциденты приводят к раздражению и даже к полному отказу от сайта. Выполнив некоторую работу на бэкенде, веб-профессионалы могут гарантировать, что никому не придется испытывать это разочарование.
Почему сеансовые таймауты непропорционально сильно затрагивают пользователей с инвалидностью
Значительная часть населения мира имеет когнитивные, моторные или зрительные нарушения. Во всем мире примерно 1,3 миллиарда людей имеют существенные инвалидности. Независимо от того, есть ли у человека моторные, когнитивные или зрительные нарушения, они влияют на то, насколько легко ему взаимодействовать с технологиями. Все они могут непропорционально сильно страдать от сеансовых таймаутов, поэтому доступность сеансовых таймаутов — критически важная тема.
Сеансовые таймауты недоступны для большой доли населения. Оценочно 20% людей являются нейроотличными (neurodivergent), то есть таймаут-барьеры затрагивают не малую группу пользователей — они влияют на существенную часть аудитории любого сайта. В результате некоторые пользователи могут выглядеть неактивными, хотя на самом деле они таковыми не являются. Жесткие таймауты создают лишнее давление.
Моторные нарушения и более медленные скорости ввода
Например, человек с церебральным параличом пытается купить билеты онлайн на предстоящий концерт. Из-за трудностей с координацией и скованности мышц он может вводить свои данные медленнее, чем человек без инвалидности. Он выбирает дату, находит и выбирает места, а затем заполняет персональную информацию. Прежде чем он успевает ввести данные своей кредитной карты, появляется всплывающее окно таймаута. Его «выкинули» из системы из‑за «бездействия», и ему приходится начинать весь процесс заново.
Эта ситуация не является полностью гипотетической. Мэтью Кейн — адвокат прав людей с инвалидностью, телеведущий и автор издания The European. Он описывает усилия, необходимые для навигации по сайтам, будучи человеком с церебральным параличом. Он объясняет, что интерфейс часто плохо спроектирован для адаптивных устройств, и переживает, что его оборудование может реагировать некорректно. После того как он аккуратно проходит каждую страницу, его внезапно разлогинивают. В один момент один таймированный (ограниченный по времени) запрос может стереть часы работы — и это не просто вопрос неудобства. Одна неудачная попытка может задержать получение поддержки или привести к тому, что он пропустит приемы.
Моторные нарушения могут замедлять скорость ввода, из-за чего может казаться, что пользователь находится не за компьютером. Поэтому люди, сталкивающиеся со скованностью, тремором рук, трудностями координации, непроизвольными движениями или мышечной слабостью, непропорционально сильно страдают от сеансовых таймаутов. Согласно DWP Accessibility Manual, может потребоваться несколько попыток, чтобы адаптивные технологии «распознали» ввод, что заметно замедляет пользователей. Даже если они получают предупреждение, они могут не успеть среагировать достаточно быстро, чтобы доказать, что они по‑прежнему активны.
Когнитивные нарушения и время на обработку
Сеансовые таймауты также могут создавать барьеры доступности для людей с разными типами когнитивных особенностей. Жесткие таймауты создают лишнее давление, исходя из предположения, что все обрабатывают информацию с одинаковой скоростью. Пользователи могут выглядеть неактивными, хотя они на самом деле читают, обдумывают или обрабатывают информацию.
Когнитивные различия включают широкий спектр опыта, включая нейроотличия вроде аутизма и СДВГ (ADHD), а также нарушения развития вроде синдрома Дауна и нарушения обучения вроде дислексии. Многие люди рождаются с когнитивными особенностями. Более того, оценочно 20% людей являются нейроотличными, то есть они составляют значительную часть аудитории любого сайта. Другие приобретают когнитивные инвалидности позже в жизни — из‑за черепно-мозговой травмы или состояний вроде деменции.
Людям с когнитивными инвалидностями часто требуется больше времени, чтобы завершить онлайн-задачи — не потому, что у них есть какой-то дефицит, а потому что они по‑другому обрабатывают информацию. Дизайнерские решения, которые хорошо работают для нейротипичных пользователей, могут создавать ненужные препятствия для людей с СДВГ, дислексией, аутизмом или состояниями, связанными с памятью.
Особенно проблемными являются «невидимые» сеансовые таймауты для людей, которые сталкиваются с потерей памяти, различиями в обработке языка или «слепотой ко времени» (time blindness). Например, лидер в области нейроотличных технологий Кейт Карратерс (Kate Carruthers) говорит, что СДВГ влиял на ее восприятие времени. У нее есть «слепота ко времени», и она не может надежно отслеживать, сколько времени прошло, поэтому оценки оказываются бесполезными.Когда сайты зависят от того, что пользователи оценивают оставшееся время до истечения сеанса, они незаметно исключают людей — не только тех, у кого есть официальные диагнозы СДВГ, но и любых тех, кто воспринимает время иначе или обрабатывает информацию в другом темпе.“
Зрительные нарушения и дополнительная нагрузка при навигации с помощью программ чтения с экрана
Поскольку слепые пользователи или пользователи с низким зрением не могут визуально просканировать страницу, чтобы найти нужное, им приходится слушать ссылки, заголовки и поля форм — а это по своей природе занимает больше времени. Более 43 миллионов человек по всему миру страдают от слепоты, а у 295 миллионов есть нарушения зрения от умеренных до тяжелых — и это делает проблему доступности особенно значимой для любого сайта, ориентированного на глобальную аудиторию. В результате сеансы таких пользователей могут истечь даже тогда, когда они активны. «Живые» таймеры и предупреждения за 30 секунд почти не помогают, потому что они не рассчитаны на то, как работают программы чтения с экрана.
Богдан Церовац (Bogdan Cerovac), веб-разработчик, увлеченный цифровой доступностью, столкнулся с этим на собственном опыте. Таймер обратного отсчета сообщил ему, сколько времени осталось до того, как его разлогинят из‑за «бездействия». По всем признакам, это работало нормально. Но он описывает опыт работы с программой чтения с экрана как ужасный, поскольку каждую секунду уведомлял его о том, сколько времени осталось. Он не мог нормально ориентироваться на странице, потому что его «засыпали» постоянными сообщениями о статусе.
Типовые сценарии таймаутов, которые не соответствуют требованиям доступности
Согласно Национальному институту стандартов и технологий (NIST), управление сеансом предпочтительнее постоянного сохранения учетных данных, что побуждало бы пользователей создавать обходные пути аутентификации, способные угрожать безопасности. Однако несколько распространенных сценариев таймаутов не соответствуют современным стандартам доступности сеансовых таймаутов.Источник изображения: princekwame. (Большой превью)
Тихие таймауты и недостаточные предупреждения
Многие сайты либо не показывают предупреждение перед тем, как разлогинировать пользователя, либо отображают короткое всплывающее окно на несколько секунд, которое появляется слишком поздно, чтобы успеть среагировать. Для пользователей, которые перемещаются по сайту с помощью программы чтения с экрана, такие предупреждения могут не быть объявлены вовремя. Для тех, у кого есть моторные нарушения, 30‑секундный обратный отсчет может не дать достаточно времени, чтобы ответить.
Давайте рассмотрим страницу DS‑260 Центра консульских электронных заявок (Consular Electronic Application Center), которую используют для подачи заявки на получение или продление виз США для временных (неиммигрантских) категорий. Если заявка находится бездействующей примерно 20 минут, система разлогинит пользователя без предупреждения. Страница FAQ дает только приблизительную оценку времени. Работа человека сохраняется только тогда, когда он завершает страницу, поэтому он может потерять значительный прогресс.
Сеансы, которые нельзя продлить
Внезапное сообщение «Срок действия сеанса истек» раздражает даже людей без инвалидности. Если нет возможности продолжить, пользователи вынуждены снова входить в систему и начинать работу заново — это тратит время и энергию.
Потеря данных формы при истечении срока
Если сайт автоматически не сохраняет прогресс, посетители теряют все, когда сеанс истекает. Для человека с инвалидностью это не просто пустая трата времени. Это может сделать его день неизмеримо тяжелее. Представьте: вы потратили час на обращение через сервис, заявку на работу или заказ-наряд (purchase order), а затем весь прогресс полностью стирается — с минимальным или вообще без предупреждения.
Паттерны дизайна, которые балансируют безопасность и доступность
Несогласованные периоды таймаута и отсутствие предупреждений приводят к внезапной, неожиданной потере всей несохраненной работы. Для длинных и сложных форм — например, DS‑260 — плохой пользовательский опыт особенно мучителен. Для сравнения: подача заявки на пенсионный кредит в Великобритании (United Kingdom) — очень доступный процесс. Там предупреждают пользователей как минимум за две минуты заранее и дают возможность продлить сеанс. Это соответствует уровню AA критериев успеха WCAG 2.2, что указывает на доступность.Источник изображения: Experience League. (Большой превью)
Люди с инвалидностью непропорционально сильно страдают от непреднамеренных последствий плохого управления сеансами. К счастью, недоступность сеансовых таймаутов — не вопрос «факта». С помощью нескольких небольших изменений веб-профессионалы могут существенно улучшить доступность своего сайта.
Системы предварительных предупреждений и возможность продления
Сайты должны четко указывать, что существует ограничение по времени, и какова его длительность, прежде чем начнется сеанс. Например, если человек заполняет банковскую форму, первая страница должна существовать исключительно для того, чтобы сообщить ему о 60‑минутном лимите. «Живой» счетчик, который регулярно обновляется, поможет отслеживать, сколько времени осталось. Также пользователям нужно сообщить, могут ли они изменить длительность таймаута сеанса.
Таймауты по активности vs. абсолютные таймауты
Таймаут по активности разлогинивает пользователя из‑за бездействия, а абсолютный таймаут разлогинивает независимо от активности. Для офиса абсолютный таймер на 24 часа может иметь смысл, поскольку сотрудники должны входить в систему только тогда, когда приходят на работу. Пока пользователи знают, когда истечет их сеанс, второй вариант (абсолютный таймаут) более доступен, чем первый.
Автосохранение и сохранение прогресса
Cookies, localStorage и sessionStorage — это временные механизмы хранения на стороне клиента, которые позволяют веб-приложениям сохранять данные в течение одного сеанса работы браузера. Это мощные, легковесные инструменты. Веб-разработчики могут использовать их, чтобы автоматически сохранять прогресс пользователей через частые интервалы, гарантируя, что данные будут восстановлены после повторной аутентификации.
Таким образом, даже если сеанс истечет случайно, пользователя не будут наказывать. После повторного входа он сможет завершить ввод данных своей кредитной карты или продолжить с того места, где остановился, при заполнении онлайн-формы.
Тестирование и соображения по соответствию WCAG
Руководство по доступности веб-контента (Web Content Accessibility Guidelines, WCAG) — это набор международно признанных стандартов доступности интернета, опубликованный W3C. Оно выступает арбитром доступности сеансовых таймаутов. Веб-разработчикам следует уделить особое внимание Руководству 2.9.2, в котором описаны лучшие практики для достаточного времени.
Механизм, позволяющий настраивать таймаут, должен продлевать лимит до истечения сеанса или позволять полностью отключить его. Для первого варианта должно появляться диалоговое окно, которое спрашивает пользователей, нужно ли им больше времени, и позволяет продолжить одним кликом. WC3 отмечает, что существуют исключения.
Например, когда сайт проводит прямую (live) продажу билетов, пользователи могут удерживать билеты в своей корзине только 10 минут, чтобы дать другим возможность купить ограниченный запас. В качестве альтернативы сеансовые таймауты могут быть необходимы на общих компьютерах. Если бы библиотекари разрешали всем оставаться в системе вместо того, чтобы автоматически разлогинивать их на ночь, они бы рисковали проблемами безопасности.
Некоторые процессы вообще не должны иметь ограничение по времени. При просмотре социальных сетей, чтении новостной статьи или поиске товаров на сайте электронной коммерции нет причин, чтобы сеанс истекал в произвольный временной промежуток. Между тем, в таймированном экзамене это может быть необходимо. Однако в таком случае администраторы могут продлевать лимиты для студентов с инвалидностью.
Когда веб-разработчики делают управление сеансами доступным, они не обслуживают маленькую группу. Данные Pew Research Center показывают, что 62% взрослых людей с инвалидностью имеют компьютер. 72% имеют высокоскоростной домашний интернет. Эти показатели статистически не отличаются от доли недисаблед (не имеющих инвалидности) взрослых, которые говорят, что имеют то же самое.
Преодоление барьера доступности сеансовых таймаутов
WCAG предоставляет дополнительные ресурсы, которые веб-разработчики могут изучить, чтобы лучше понять доступность управления сеансами:WCAG SC 2.2.1 Timing AdjustableWCAG SC 2.2.5 Re-authenticatingWCAG SC 2.2.6 Timeouts
Помимо следования этим рекомендациям, существует множество информации от ведущих образовательных учреждений, организаций, занимающихся открытыми веб-технологиями, и государственных агентств. Они дают отличную отправную точку для тех, у кого есть промежуточный уровень знаний в веб-разработке.
Веб-профессионалам стоит рассмотреть следующие ресурсы, чтобы узнать больше об инструментах и техниках, которые можно применять, чтобы сделать управление сеансами более доступным:Техника продления сеанса от Harvard UniversityDWP Accessibility Manual: Как тестировать сеансовые таймаутыWindow: свойство sessionStorageДоступность сеансовых таймаутов — это не только лучшая практика в индустрии, но и этический стандарт разработки веба.“
Те, кто расставляет приоритеты для этого, будут интересны более широкой аудитории, улучшат удобство использования и привлекут больше посетителей сайта и более длительные сессии.
Главный вывод: сайт с недоступными сеансовыми таймаутами отправляет ясный сигнал о том, что он не ценит ни время, ни усилия пользователя — а это создает значительные барьеры для людей с инвалидностью. Однако это решаемая проблема. С помощью нескольких простых изменений — например, предоставления предупреждений о продлении сеанса и автосохранения прогресса — веб-разработчики могут создать для всех более внимательный, доступный и уважительный интернет.
Дополнительное чтение на SmashingMag
«Что на самом деле значит, чтобы сайт был доступен для навигации с клавиатуры», Eleanor Hecks
«Проектирование с учетом нейроразнообразия», Vitaly Friedman
«Что я хотел бы, чтобы кто-то сказал мне, когда я только начинал разбираться в ARIA», Eric Bailey
«Набор инструментов для адвокации доступности для дизайнеров», Yichan Wang

(yk)