1.4 Существующие системы аутентификации и авторизации
1.4.1 PassportJS
PassportJS [10] – промежуточное программное обеспечение для
платформы NodeJS [7], реализующее различные способы аутентификации на стороне сервера, называемые «стратегиями», например, такие как:
1. Аутентификация через сторонние сервисы с помощью протокола
2. Аутентификация с помощью токенов.
3. Аутентификация по логину и паролю.
Недостатки данного подхода:
1. Отсутствует возможность настройки многофакторной аутентификации.
2. Не обеспечиваются механизмы защиты идентификатора сессии на клиентской стороне.
3. Многие «стратегии» уязвимы к атакам.
1.4.2 Auzy
Auzy [1] - промежуточное программное обеспечение для платформы NodeJS, реализующее доступ к системе при помощи сессий и позволяющее производить настройку параметров с помощью конфигурационного файла, а именно:
1. Имя заголовка для хранения идентификатора сессии.
2. Время жизни идентификатора сессии.
Недостатки данного подхода:
1. Отсутствует возможность настройки многофакторной аутентификации.
2. Не обеспечиваются механизмы защиты идентификатора сессии на клиентской стороне.
1.5 Выбранные для реализации механизмы аутентификации
На основании сравнительного анализа рассмотренных решений в работе был предложен подход, использующий следующий способы аутентификации:
1. Аутентификация по долговременному паролю.
2. Аутентификация по долговременному паролю и одноразовому паролю, приходящему по SMS.
3. Аутентификация по долговременному паролю и одноразовому паролю, полученному с помощью алгоритма TOTP через приложение
Google Authenticator.
Do'stlaringiz bilan baham: |