Научная статья на тему 'ОСОБЕННОСТИ ПРИМЕНЕНИЯ СОВРЕМЕННЫХ СПОСОБОВ И ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ В ВЕБ-ПРИЛОЖЕНИЯХ'

ОСОБЕННОСТИ ПРИМЕНЕНИЯ СОВРЕМЕННЫХ СПОСОБОВ И ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ В ВЕБ-ПРИЛОЖЕНИЯХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
125
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СОВРЕМЕННЫЕ МЕТОДЫ / ПРОТОКОЛЫ / АУТЕНТИФИКАЦИЯ / ВЕБ-ПРИЛОЖЕНИЯ / JWT-АУТЕНТИФИКАЦИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Старосельский А.К., Жиренкин А.В.

Данный материал излагает основные современные методы и протоколы аутентификации в веб-приложениях, включая JWT-аутентификацию. В статье подробно рассматриваются данный метод и его особенности.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

FEATURES OF THE USE OF MODERN AUTHENTICATION METHODS AND PROTOCOLS IN WEB APPLICATIONS

This material outlines the main modern authentication methods and protocols in web applications, including JWT authentication. The article discusses this method and its features in detail.

Текст научной работы на тему «ОСОБЕННОСТИ ПРИМЕНЕНИЯ СОВРЕМЕННЫХ СПОСОБОВ И ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ В ВЕБ-ПРИЛОЖЕНИЯХ»

УДК 004

Старосельский А.К.

студент 4 курса, кафедра АПУ Санкт-Петербургский государственный электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина) (г. Санкт-Петербург, Россия)

Жиренкин А.В.

студент 4 курса, кафедра АПУ Санкт-Петербургский государственный электротехнический университет

«ЛЭТИ» им. В.И. Ульянова (Ленина) (г. Санкт-Петербург, Россия)

ОСОБЕННОСТИ ПРИМЕНЕНИЯ СОВРЕМЕННЫХ СПОСОБОВ И ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ В ВЕБ-ПРИЛОЖЕНИЯХ

Аннотация: данный материал излагает основные современные методы и протоколы аутентификации в веб-приложениях, включая JWT-аутентификацию. В статье подробно рассматриваются данный метод и его особенности.

Ключевые слова: современные методы, протоколы, аутентификация, веб-приложения, JWT-аутентификация

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

Аутентификация - это процесс проверки подлинности пользователя, который запрашивает доступ к веб-приложению. Существуют различные

методы аутентификации, которые могут использоваться веб-приложениями, чтобы защитить конфиденциальную информацию пользователей.

Принцип работы аутентификации заключается в том, чтобы проверить, что пользователь, который пытается получить доступ к ресурсам, является тем, за кого он себя выдает. Когда пользователь пытается войти в систему, он вводит свои учетные данные на странице входа в приложение, данные отправляются на сервер аутентификации, который сравнивает их с записями в базе данных. Если данные верны, пользователь получает доступ к системе, а если нет, то доступ запрещается.

Кроме имени пользователя и пароля, аутентификация может основываться на других методах, таких как аутентификация по сертификату или использование одноразовых кодов, получаемых на мобильный телефон. Важным аспектом при проектировании аутентификации является обеспечение безопасности.

Общим принципом работы аутентификации веб-приложений является проверка подлинности пользователей для обеспечения безопасного доступа к ресурсам приложения. Этот аспект является ключевым для любого веб-приложения и требует тщательной проработки и реализации.

JWT токены, или JSON Web Tokens, являются стандартом для обмена данными между клиентом и сервером в виде безопасных токенов, которые могут использоваться для аутентификации и авторизации пользователей [1].

JWT токены состоят из трех частей: заголовка, полезной нагрузки и подписи. Заголовок содержит информацию о типе токена и используемом алгоритме шифрования, полезная нагрузка содержит информацию, которую необходимо передать между клиентом и сервером, а подпись является цифровой подписью, которая гарантирует целостность и подлинность токена.

Существуют два типа JWT токенов: Access и Refresh токены, которые используются для аутентификации и авторизации пользователей. Обычно они используются в паре для обеспечения безопасного доступа к ресурсам.

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

Refresh токен - это токен, который выдается пользователю вместе с Access токеном. Он используется для обновления, когда истекает срок действия Access токена. Refresh токен также имеет ограниченное время жизни, которое обычно больше, чем у Access токена, и может составлять несколько дней или недель.

Когда Access токен истекает, приложение отправляет запрос на сервер для обновления токенов, используя Refresh токен. Если Refresh токен действителен, сервер выдает новые Access и Refresh токены. Новый Access токен можно использовать для получения доступа к ресурсам, а новый Refresh токен сохраняется для будущего обновления Access токена [2].

Токены предоставляют средство авторизации для каждого клиентского запроса к серверу. Токены сохраняются на клиентской стороне и используются для авторизации запросов. Это особенно полезно при разработке SPA.

Поскольку токены JWT используются для аутентификации и авторизации пользователя, они должны быть надежно защищены от несанкционированного доступа. Access токен следует хранить исключительно в памяти клиентского приложения, а Refresh токен в Cookies (Куки-файлы) с атрибутом httpOnly. Данный атрибут не позволяет клиентским скриптам получить доступ к этим файлам cookie.

Чтобы обеспечить безопасность приложения, Refresh токен должен храниться на сервере в безопасном месте. Для защиты Refresh токена от несанкционированного доступа и уменьшения вероятности его утечки на сервере следует использовать защищенные методы хранения данных, такие как шифрование или хэширование. Refresh токен должен храниться в течение

ограниченного времени, чтобы уменьшить вероятность его использования злоумышленниками в случае утечки.

Refresh токены следует хранить в СУБД с высокой доступностью, хорошим примером будет Redis. Это важно для того, чтобы обеспечить быструю обработку запросов на обновление токена при каждом запросе на доступ к API.

В данной статье были рассмотрены современные способы и особенности аутентификации. При использовании JWT токенов Access токены следует хранить только в памяти клиентского приложения, а Refresh токены исключительно в httpOnly cookies.

СПИСОК ЛИТЕРАТУРЫ:

1. Spasovski M. OAuth 2.0 Identity and Access Management Patterns. Packt Publishing Ltd; 2013

2. Schwartz M., Machulak M. Securing the Perimeter: Deploying Identity and Access Management with Free Open Source Software. Apress; 2018

Staroselsky A.K.

4th year student, APU Department Saint Petersburg Electrotechnical University "LETI" (St. Petersburg, Russia)

Zhirenkin A.V.

4th year student, APU Department Saint Petersburg Electrotechnical University "LETI" (St. Petersburg, Russia)

FEATURES OF THE USE OF MODERN AUTHENTICATION METHODS AND PROTOCOLS IN WEB APPLICATIONS

Abstract: this material outlines the main modern authentication methods and protocols in web applications, including JWT authentication. The article discusses this method and its features in detail.

Keywords: modern methods, protocols, authentication, web applications, JWT authentication.

i Надоели баннеры? Вы всегда можете отключить рекламу.