Пропозиції щодо авторизації в сайдкар компоненті мікросервісної архітекрури

dc.contributor.authorНоско, Сергій Вікторович
dc.contributor.authorБульба, Сергій Сергійович
dc.contributor.authorКоломійцев, Олексій Володимирович
dc.contributor.authorЛисиця, Дмитро Олександрович
dc.contributor.authorМолчанов, Георгій Ігорович
dc.date.accessioned2026-01-22T07:39:09Z
dc.date.issued2025
dc.description.abstractУ статті розроблено пропозиції щодо доцільності реалізації авторизації у сайдкар компоненті мікросервісу, що дозволяє відокремити бізнес-логіку від завдань авторизації, ведення журналів, кешування тощо. Така реалізація дозволяє основним бізнес-модулям залишатися сфокусованими виключно на своїй бізнес-логіці, змінюючись лише тоді, коли є оновлення у бізнес-процедурах, а задачі, які є загальними майже для будь-якого сучасного рішення,передавати допоміжним компонентам таким як сайдкар. Правильна реалізація авторизації виступає ключовим аспектом будь-якої системи, є дуже важливим та вимагає врахування великої кількості особливостей та використання передових практик для забезпечення збереження даних від несанкціонованого доступу. Розглянуто можливості open-source рішення Keycloak. Таке рішення є дуже популярним сервісом для аутентифікації/авторизації, має підтримку стандартних протоколів ідентифікації, таких як: OpenID Connect, OAuth 2.0, SAML 2.0. Рішення підтримує багатофакторну аутентифікацію, підтримує контейнеризацію та може бути легко розподіленим у середовищі мікросервісів як Kubernates та інтегруватися з різними зовнішніми сервісами, включаючи Google, Facebook тощо. Розроблено архітектуру та пропозиції, що необхідні для виконання інтеграції з сайдкар компонентом. Проведено дослідження щодо продуктивності розробленого рішення. Отримано числові значення, що наведено у таблицях та на графіку.
dc.description.abstractThe article develops proposals on the feasibility of implementing authorization in the sidekick component of a microservice, which allows separating business logic from authorization tasks, logging, caching, etc. Such an implementation allows the main business modules to remain focused exclusively on their business logic, changing only when there are updates to business procedures, and tasks that are common to almost any modern solution to be transferred to auxiliary components such as a sidekick. Proper implementation of authorization is a key aspect of any system, it is very important and requires taking into account a large number of features and using best practices to ensure the safety of data fromunauthorized access. The possibilities of the open-source Keycloak solution are considered. This solution is a very popular service for authentication/authorization, it supports standard identification protocols, such as: OpenID Connect, OAuth 2.0, SAML 2.0. The solution supports multi-factor authentication, supports containerization, and can be easily distributed in a microservices environment like Kubernates and integrated with various external services, including Google, Facebook, etc. The architecture and proposals necessary for integration with the sidekick component are developed. A study on the performance of the developed solution was conducted. Numerical values were obtained and presented in tables and graphs. Additionally, it can integrate with various external services, including Google, Facebook, and others. The article presents the architecture and method required for integration with a sidecar component and includes a performance analysis of the proposed solution. To enhance the performance further, the sidecar architecture incor porates a local caching mechanism, utilizing Caffeine cache — known for its high performance and effectiveness. This cache stores authorization tokens, significantly decreasing the volume of calls required to Keycloak by reusing the tokens stored locally until they expire. This mechanism reduces reliance on central Keycloak servers and minimizes latency, providing a performance boost through decreased network traffic and accelerated token retrieval processes. Extensive performance testing was conducted using the Gatling framework to validate the integration and caching strategy. These tests demonstrated that the sidecar configura tion, equipped with the local Caffeine cache, maintained consistent performance under varying loads and was capable of horizontal scaling without degradation in response times. Moreover, the reduced load on the Keycloak servers showcased the effective ness of the caching approach in minimizing backend calls for token validations. The approach confirms the robustness and scalability of the sidecar, poised to handle increased loads efficiently while safeguarding sensitive authorization data.
dc.identifier.citationПропозиції щодо авторизації в сайдкар компоненті мікросервісної архітекрури / C. В. Носко, С. С. Бульба, О. В. Коломійцев [та ін.] // Системи управління, навігації та зв'язку = Control, navigation and communication systems : зб. наук. пр. / гол. ред. В. В. Косенко ; Полт. нац. техн. ун-т ім. Юрія Кондратюка. – Полтава : ПНТУ, 2025. – Вип. 1 (79). – С. 116-123.
dc.identifier.doihttps://doi.org/10.26906/SUNZ.2025.1.116-123
dc.identifier.orcidhttps://orcid.org/0000-0003-0358-7516
dc.identifier.orcidhttps://orcid.org/0000-0001-8228-8404
dc.identifier.orcidhttps://orcid.org/0000-0003-1778-4676
dc.identifier.urihttps://repository.kpi.kharkov.ua/handle/KhPI-Press/97784
dc.language.isouk
dc.publisherНаціональний університет “Полтавська політехніка імені Юрія Кондратюка”
dc.subjectсайдкар
dc.subjectмікросервіс
dc.subjectавторизація
dc.subjectKeycloak
dc.subjectпродуктивність
dc.subjectкеш
dc.subjectконтейнер
dc.subjectKubernates
dc.subjectмасштабованість
dc.subjectopen-source
dc.subjectGatling
dc.subjectрозподіл ресурсів
dc.subjectбалансування навантаження
dc.subjectвеб-сервер
dc.subjectінформаційна система
dc.subjectSidecar
dc.subjectmicroservices
dc.subjectauthorization
dc.subjectKeycloak
dc.subjectperformance
dc.subjectcache
dc.subjectcontainers
dc.subjectKubernetes
dc.subjectscalability
dc.subjectopen-source
dc.subjectGatling
dc.subjectresource allocation
dc.subjectload balancing
dc.subjectweb server
dc.subjectinformation system
dc.titleПропозиції щодо авторизації в сайдкар компоненті мікросервісної архітекрури
dc.title.alternativeSuggestions for authorization in the sidekick component of microservice architecture
dc.typeArticle

Файли

Контейнер файлів

Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
SUNZ_2025_1_Nosko_Propozytsii_shchodo_avtoryzatsii.pdf
Розмір:
683.22 KB
Формат:
Adobe Portable Document Format

Ліцензійна угода

Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
license.txt
Розмір:
11.15 KB
Формат:
Item-specific license agreed upon to submission
Опис: