Открыть сервис

Офлайн-авторизация

Офлайн-авторизация — это процесс проверки подлинности и прав доступа пользователя или устройства к ресурсам, системе или данным, который выполняется без постоянного подключения к центральному серверу аутентификации (например, к удалённой базе данных или облачному сервису). В отличие от онлайн-авторизации, где каждый запрос требует сетевого обмена с сервером, офлайн-авторизация полагается на локально хранимые учётные данные, сертификаты, токены или криптографические ключи, позволяя принимать решения о доступе автономно.

Принцип работы

Основой офлайн-авторизации является предварительная загрузка и синхронизация данных, необходимых для проверки прав. В момент, когда устройство находится в сети, оно получает от сервера аутентификации цифровой «паспорт» — обычно это токен (например, JSON Web Token, JWT) или сертификат, подписанный доверенным центром. Этот токен содержит информацию о пользователе, его ролях, правах и сроке действия, а также криптографическую подпись, удостоверяющую его подлинность.

При попытке доступа в офлайн-режиме устройство:

  1. Проверяет целостность и подлинность локально сохранённого токена с помощью открытого ключа сервера (асимметричное шифрование) или симметричного ключа.
  2. Проверяет срок действия токена (expiration time). Если токен истёк, доступ блокируется.
  3. Извлекает из токена информацию о правах (роли, разрешения) и сравнивает её с запрашиваемым ресурсом.
  4. Принимает решение — разрешить или запретить доступ.

В более сложных системах (например, в корпоративных сетях) может использоваться локальная репликация базы данных прав или кэширование политик доступа (например, через Active Directory в режиме кэширования учётных записей).

История

Концепция офлайн-авторизации возникла задолго до повсеместного распространения интернета. Первые компьютерные системы (например, мейнфреймы 1960–1970-х годов) работали автономно, и авторизация проводилась на основе локальных списков пользователей и паролей, хранящихся на магнитных дисках или перфокартах. С развитием сетей (ARPANET, а затем интернета) авторизация стала централизованной — появились серверы аутентификации (Kerberos, LDAP). Однако с ростом мобильных устройств, встроенных систем и удалённых объектов (например, банкоматов, автомобилей, дронов) возникла потребность в работе без постоянного соединения. В 2000-х годах стандарты OAuth 2.0 и OpenID Connect начали поддерживать офлайн-режим через механизмы refresh-токенов. В 2010-х годах с развитием IoT и edge-вычислений офлайн-авторизация стала обязательным требованием для многих промышленных и потребительских решений.

Классификация

Офлайн-авторизацию можно классифицировать по способу хранения и проверки данных:

По типу хранимых учётных данных

  • На основе токенов (Token-based) — используются JWT, SAML-ассерции или собственные форматы токенов. Токен содержит подписанные утверждения о правах.
  • На основе сертификатов (Certificate-based) — применяются X.509-сертификаты, которые устанавливаются на устройство и проверяются через цепочку доверия.
  • На основе локальной базы данных — на устройстве хранится реплика базы учётных записей и прав (например, локальная копия Active Directory на контроллере домена в изолированной сети).
  • На основе криптографических ключей — используется асимметричная пара ключей: приватный ключ хранится на устройстве, публичный — на сервере. Авторизация доказывается подписью запроса.

По степени автономности

  • Полная офлайн-авторизация — устройство может работать неограниченное время без сети, пока не истечёт срок действия токена или не изменится политика доступа.
  • Ограниченная офлайн-авторизация — устройство может работать только определённое время (например, 24 часа) после последней синхронизации, после чего блокируется до восстановления соединения.
  • Гибридная (офлайн с возможностью отзыва) — устройство периодически проверяет списки отзыва (CRL) или получает обновления политик при подключении к сети.

По области применения

  • Пользовательская — авторизация человека на устройстве (например, вход в мобильное приложение, разблокировка смартфона по отпечатку пальца, работа с офлайн-картами).
  • Системная (машина-машина) — авторизация устройств IoT, промышленных контроллеров, автомобильных систем, банкоматов.
  • Прикладная — авторизация внутри приложения (например, офлайн-доступ к документам в корпоративном файловом менеджере).

Устройство и характеристики

Типовая система офлайн-авторизации включает следующие компоненты:

  1. Клиентское устройство — смартфон, ноутбук, банкомат, контроллер, на котором хранятся локальные данные авторизации.
  2. Локальное хранилище — защищённая область памяти (Trusted Execution Environment, TEE), аппаратный модуль безопасности (HSM, TPM) или зашифрованный файл.
  3. Механизм проверки — программный модуль, который верифицирует подпись токена, проверяет срок действия и извлекает права.
  4. Политика доступа — локально кэшированные правила (например, «роль администратора имеет доступ ко всем файлам»).
  5. Интерфейс синхронизации — модуль, который при подключении к сети обновляет токены, сертификаты и списки отзыва.

Ключевые характеристики:

  • Время автономной работы — период, в течение которого система может принимать решения без сети.
  • Надёжность проверкиустойчивость к подделке токенов (использование криптографии с открытым ключом).
  • Возможность отзыва — способность аннулировать права после синхронизации (например, через CRL или чёрные списки).
  • Производительность — скорость проверки токена (обычно миллисекунды для JWT).

Применение

Офлайн-авторизация широко используется в различных сферах:

  • Мобильные приложения и сервисы — например, офлайн-карты (Яндекс.Карты, Google Maps), где пользователь может просматривать загруженные области без интернета. Доступ к скачанным картам контролируется через токен, полученный при покупке или подписке.
  • Корпоративные системы — ноутбуки сотрудников, которые могут работать в командировках без доступа к корпоративной сети. Используется кэширование учётных записей Active Directory (кэширование последних 10–100 входов).
  • Банковские терминалы и банкоматы — авторизация карт и PIN-кодов может проводиться локально на основе эмбоссированных данных или чипа (EMV), если связь с процессинговым центром временно отсутствует.
  • Системы «умный дом» и IoT — например, дверной замок, который открывается по отпечатку пальца или коду, хранящемуся локально, без облачного сервера.
  • Автомобильные системы — доступ к функциям автомобиля (запуск двигателя, навигация) на основе ключа-метки или смартфона, работающего в офлайн-режиме.
  • Промышленные контроллеры и SCADA — авторизация операторов на локальных панелях управления в удалённых цехах или на нефтяных платформах, где связь нестабильна.

Преимущества и недостатки

Преимущества

  • Надёжность и доступность — система работает даже при полном отсутствии сети, что критично для удалённых или изолированных объектов.
  • Низкая задержка — решение принимается локально, без сетевых запросов, что важно для реального времени (например, в промышленности).
  • Экономия трафика — не требуется постоянный обмен данными с сервером.
  • Безопасность при атаках на сеть — злоумышленник не может перехватить запрос авторизации, так как он не передаётся.

Недостатки

  • Сложность отзыва прав — если токен или сертификат скомпрометирован, его невозможно аннулировать до следующей синхронизации.
  • Уязвимость к локальным атакам — если злоумышленник получает физический доступ к устройству, он может извлечь токен или ключ.
  • Ограниченный срок действия — токены имеют срок жизни, после которого требуется подключение к сети для обновления.
  • Риск рассинхронизации политик — если на сервере изменились права пользователя, устройство узнает об этом только при следующем соединении.

Интересные факты

  • В операционной системе Windows офлайн-авторизация реализована через механизм кэширования учётных записей (Cached Credentials). По умолчанию Windows хранит хэши паролей последних 10 входов, что позволяет войти в систему без контроллера домена.
  • В стандарте OAuth 2.0 для офлайн-доступа используется специальный тип токена — refresh token, который позволяет получить новый access token без повторного ввода пароля. Refresh token может жить неделями или месяцами.
  • В системах EMV (банковские карты) офлайн-авторизация возможна благодаря чипу, который хранит список последних транзакций и лимиты. Терминал может авторизовать платёж локально, если сумма ниже порога.
  • В России, согласно требованиям законодательства (например, 152-ФЗ «О персональных данных»), обработка биометрических данных для авторизации (отпечатки пальцев, лицо) должна проводиться с использованием локальных, а не облачных систем, что стимулирует развитие офлайн-решений.

Источники

  • Спецификация OAuth 2.0 (RFC 6749), раздел «Refresh Token».
  • Документация Microsoft: «Cached and Stored Credentials in Windows».
  • Стандарт EMV 4.3: «Offline Data Authentication».
  • Федеральный закон Российской Федерации от 27 июля 2006 года № 152-ФЗ «О персональных данных».
  • Статья «Offline Authorization: Concepts and Challenges» (IEEE Access, 2021).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →