Використання Entra ID для забезпечення безпеки у додатках на Golang

Застосування хмарних сервісів Azure разом із системою Entra ID у поєднанні з протоколом OAuth 2.0 або подібними, для створення безпечного механізму аутентифікації та взаємодії з продуктами компанії Microsoft, через отримання токену доступу до них.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык украинский
Дата добавления 21.03.2024
Размер файла 10,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Використання Entra ID для забезпечення безпеки у додатках на Golang

Долгий Андрій Іванович, здобувач вищої освіти факультету комп'ютерних наук; Олійник Олена Володимирівна, старший викладач кафедри програмної інженерії, Харківський національний університет радіоелектроніки, Україна

На сучасному етапі розвитку інформаційних технологій, існує безліч клієнт-орієнтованих систем та додатків для будь-якої потреби. У достатньо великих програмних застосунках, що вирішують комплексні й обширні проблеми та задачі, як правило, виникає потреба використання підсистем для збереження BLOB-файлів, розгортання та використання баз даних тощо. Також під час розробки виникає питання розгортання для робітників віртуальних машин, публікації проєкту до мережі Інтернет, інструментів для адміністрування застосунку тощо. Усі визначені проблеми та задачі можуть вирішувати відповідні сервіси, що надаються компанією Microsoft, а саме Azure сектор [1].

Слід відмітити, що вказані хмарні сервіси, є в певній мірі безпечними саме з боку збереження даних та обміну ними з програмними системами тощо проте процес аутентифікації є менш безпечним у базовому форматі. Для забезпечення приватного доступу та унеможливлення отримання доступ до клієнтських й приватних даних третім особам, на допомогу приходить ще один сервіс Azure - Microsoft Entra ID [2].

Microsoft Entra ID або Azure Active Directory, раніше, це сервіс, який спрямований на створення загальної та організованої системи налаштування й управління системою доступів та дозволів на користування окремими хмарними застосунками Azure у рамках однієї організації, проєкту тощо. Зазначена система управління безпекою аутентифікації та взаємодії користувача із хмарними сервісами насамперед, вирішує прогалину у приватності ключів та схожих даних, що мають зберігати та використовувати для авторизації програмні застосунки у випадку прямого використання хмарних застосунків Microsoft. Entra ID надає можливість централізовано давати дозвіл на користування сервісами Azure, напряму з власних налаштувань системи контролю, що позбавляє необхідності зберігати відомості щодо паролей та ключів у самих програмних додатках. Зазначений підхід може використовувати додатково протоколи аутентифікації - OAuth 2.0 [3], OpenID Connect [4] тощо, для звернення до необхідних сервісів Azure із використанням налаштувань Entra ID, що позбавляє сторонніх осіб можливості отримати приватні дані доступу, значно збільшуючи безпеку програмної системи, яка оперує приватними даними тощо.

Для демонстрації різниці у об'ємі секретної інформації що передається, при використанні Azure Blob Storage, для доступу до сервісу серверу необхідно оперувати посиланням до цього сховища та ключами авторизації, які необхідно буде передати за доволі вразливими каналом зв'язку, що може призвести до втрати секретності паролів тощо. Однак із використанням системи Entra ID та протоколів авторизації OAuth 2.0, OpenID Connect та інших, можна обмежитись лише відомістю про «ID», зареєстрованого у зазначеній системі додатку, завдяки чому, зловмисники не зможуть отримати можливість доступу до клієнтської інформації.

Додатково, хмарна система Azure Active Directory надає дуже широкий функціонал з налаштувань доступу, як для самих користувачів та додатків у цій ролі, так і для самих сервісів Microsoft, таких як Azure Blob Storage, тощо. Це є централізованим процесом, що спрощує контроль та, завдяки цьому, надає змістовну статистичну інформацію, стосовно свого використання.

Розглядаючи ситуацію зі сторони програмного забезпечення клієнт-серверних застосунків, відзначимо, що мова програмування Golang є достатньо поширеною та вживаною з серверної частини проєктів. Зазначена мова є популярною у створенні веб-серверів та мікросервісів через низку якостей, таких як значна швидкість, низький рівень абстракцій та доволі простий синтаксис, через що, мова є більш доступною у нових проєктах. За рахунок вказаних переваг мови Golang є важливим розгляд реалізації безпечного зв'язку з хмарними сервісами Microsoft, під час використання їх можливостей.

Розгляд підходу впровадження доступу до хмарних сервісів Microsoft, з використанням Entra ID системи, буде виконано із використанням одного з вказаних вище протоколів аутентифікації, а саме OAuth 2.0. Бібліотека для застосування обраного підходу, розташована за посиланням «golang.org/x/oauth2» та доступна для додавання у проєкт після завантаження за допомогою команди «go get [шлях]», що є вбудованим інструментом командного рядку в мові Golang. Зазначений протокол - OAuth 2.0, підтримує грант тип аутентифікації "authorization code", із використанням PKCE (Proof Key for Code Exchange) [5]. Даний підхід забезпечує додаток можливістю отримати токен доступу до сервісу Entra ID лише із використанням «ID» зареєстрованого у системі додатка, що позбавляє необхідність зберігати чи передавати секрет, за яким зловмисники можуть отримати несанкціонований доступ. Замість зазначеного «ключа», застосунок генерує певне значення - код виклику та створює його хеш, після чого, зазначені дані формують запит авторизації. Слід відмітити, що це є елементом PKCE - додаткового рівня безпеки, що запобігає спробам отримати код авторизації. Згенерований параметр виклику використовується для підтвердження запита на авторизацію.

Оскільки кожен код виклику є випадковим значенням, спроби перехопити та використовувати надалі це значення не є можливим. Отже підхід із застосуванням "authorization code" та PKCE, навіть у тому випадку коли «ID» додатку з сервісу Entra ID потрапляє до сторонніх лиць, отримання доступу до хмарних застосунків не є можливим.

Підсумовуючи вище сказане, можна відзначити, що швидкісні додатки на мові програмування Golang із застосуванням хмарних сервісів Azure, таких як сховище BLOB-файлів - Azure Blob Storage та інших, слід використовувати разом із системою Entra ID у поєднанні з протоколом OAuth 2.0 або подібними, для створення безпечного механізму аутентифікації та взаємодії зі згаданими продуктами компанії Microsoft, через отримання токену доступу до них. Такий підхід до використання хмарних сервісів закриває питання прогалини у безпеці клієнт-орієнтованих додатків, під час аутентифікації у системі, в якій зберігається приватна та чутлива інформація користувачів тощо.

Висновки

У роботі розглянуте питання використання хмарних сервісів, зокрема додатків Azure компанії Microsoft, з точки зору забезпечення належного рівня безпечності доступу. Визначено важливість застосування сервісу Microsoft Entra ID для реалізації централізованого контролю над правами доступу та посвідчень, як для вже реалізованих додатків, так і для потреб, що виникають під час розробки застосунків. У роботі розглянуті протоколи аутентифікації та авторизації, у якості інструменту для забезпечення безпечного доступу до хмарного сервісу Microsoft Entra ID з урахуванням використання незахищених каналів зв'язку. Відзначено важливість вище вказаних технологій та описано механізм використання у додатках на мові програмування Golang.

хмарний сервіс azure аутентифікація

Список використаних джерел

1. David M. (2019, 18 листопада). Azure Cloud Services and Its Importance.

2. Microsoft. (2023, 7 березня). Azure Active Directory and identity management.

3. Hardt D. (Ed.). (2012). The OAuth 2.0 Authorization Framework. RFC Editor.

4. Siriwardena P. (2022). OpenID Connect in Action. Manning Publications Co. LLC.

5. Bradley J., Agarwal N. (2015). Proof Key for Code Exchange by OAuth Public Clients. RFC Editor.

Размещено на Allbest.ru

...

Подобные документы

  • Аналіз існуючих методів несанкціонованого отримання інформації та заходів щодо протидії їм. Детальних огляд їх властивостей і можливостей впровадження на підприємстві. Наслідки недотримання правил захисту інформації від несанкціонованого отримання.

    курсовая работа [36,5 K], добавлен 19.11.2014

  • Технології організації безпечного доступу на об’єкт. Принцип роботи мережевої системи контролю доступу. Технологія сканування відбитків пальців. Опис базових параметрів біометричного обладнання. Елементи ідентифікації в сучасних системах доступу.

    дипломная работа [4,9 M], добавлен 27.01.2012

  • Призначення та можливості видавничої системи Microsoft Office Publisher 2003. Підтримка професійних засобів друкування. Інтерфейс та робота з видавничою системою. Створення публікації з нуля. Використання макетів та шаблонів. Техніка безпеки оператора.

    контрольная работа [30,6 K], добавлен 03.02.2011

  • Изучение и реализация системы, использующей возможности Microsoft Azure для распределенного обучения нейронной сети. Рассмотрение функционирования распределенных вычислений. Выбор задачи для исследования; тестирование данного программного ресурса.

    дипломная работа [2,0 M], добавлен 20.07.2015

  • Класифікація мережевих атак, методи протидії і захисту. Технології аутентифікації, цілісності і конфіденційності. Модуль периферійного розподілу. Безпечний дизайн Cisco SAFE. Розробка схеми мультисервісної мережі. Технології віддаленого доступу до VPN.

    курсовая работа [616,8 K], добавлен 18.09.2014

  • Вивчення інтерфейсу, архітектури, функцій (генерування криптографічних послідовностей випадкових чисел, операції із електронним підписом) бібліотеки CryptoAPI. Розгляд способів ідентифікації та аутентифікації як захисту від несанкціонового доступу.

    реферат [502,9 K], добавлен 06.04.2010

  • Відомості про дискреційну політику безпеки. Модель Харрісона-Руззо-Ульмана та Take-Grant. Базова система рольового розмежування прав доступу. Права доступу до файлів в операційній системі типу Windows. Індивідуально-групове розмежування прав доступу.

    курсовая работа [53,8 K], добавлен 08.09.2012

  • Злом комп'ютерної системи. Злом через налагодження перемикачів операційних систем. Отримання несанкціонованого доступу до чужої інформації. Аналіз безпеки обчислювальної системи, розробка необхідних вимог і умов підвищення рівня її захищеності.

    реферат [19,3 K], добавлен 05.11.2016

  • Методи захисту програмного забезпечення та комп’ютера від несанкціонованого доступу. Метод створення програми перевірки доступу за методом Тюрінга. Розробка структури програми, вибір мови програмування, тестування. Інструкція по роботі з програмою.

    курсовая работа [606,7 K], добавлен 06.08.2013

  • Робота зі сторінками, абзацами та текстом у Microsoft Word, використання таблиць замість символів табуляції, робота з формулами та малюнками. Робота з Microsoft Excel, використання статистичних функцій, вирішення рівнянь, створення адресної книги.

    контрольная работа [1,6 M], добавлен 21.04.2011

  • Режими роботи з таблицями в Microsoft Access. Основні способи створення таблиць. Вимоги до технічних характеристик комп'ютера. Створення бази даних. Техніка безпеки та основні правила при виконанні робіт на комп'ютері. Порядок архівування роботи.

    реферат [1,5 M], добавлен 23.12.2010

  • Основні визначення та опис UML. Опис основних компонентів, використаних у Microsoft Visio. Створення діаграми класів в Microsoft Visio 2010. Використання побудованої моделі при модифікаціях системи. Структура системи, її класи, їх атрибути та оператори.

    практическая работа [764,0 K], добавлен 07.05.2014

  • Створення оригінального прикладення, яке складається з декількох html-сторінок, за допомогою засобів C++ Builder із застосуванням технології WebSnap. Використання панелі навігації, адаптерів і парольного доступу, забезпечення зв'язку з БД типу InterBase.

    лабораторная работа [3,8 M], добавлен 08.06.2009

  • Сучасні тенденції у галузі розподілених систем виявлення комп’ютерних атак. Обґрунтування вибору програмного середовища та мови програмування для розробки підсистеми. Розробка узгодженого інтерфейсу взаємодії користувача з підсистемою, візуалізації даних.

    дипломная работа [2,4 M], добавлен 16.07.2014

  • Користування програмами Microsoft Excel та Microsoft Access, створення таблиць за допомогою конструктора, занесення в них даних про студентів та їх успішність. Створення запитів до бази, які виводять інформацію; критерії відбору інформації для запиту.

    контрольная работа [1,4 M], добавлен 15.05.2010

  • Стратегія побудови та забезпечення безпеки мережі Wi-Fi, характеристика стандартних методів її захисту. Сценарії проектування та розгортання мережі, радіообстеження зони її покриття, налаштування, підключення точок доступу та реалізація захисту.

    дипломная работа [2,2 M], добавлен 02.11.2013

  • Створення діаграм: варіантів використання, взаємодії, класів, станів та компонентів. Генерування коду на основі створених діаграм за допомогою StarUML на об'єктно-орієнтовній мові програмування Java. Головне вікно програми "Цифровий диктофон", лістинг.

    отчет по практике [1,9 M], добавлен 21.12.2015

  • Зміст і структура інформаційного забезпечення. Області застосування штрихового кодування. Послідовність розробки позиційних і комбінованих систем кодування. Технологія застосування електронного документообігу. Особливості створення автоматизованих банків.

    реферат [30,2 K], добавлен 24.01.2011

  • Договірна діяльність організацій як предмет проекту створення бази даних. Основні етапи роботи з Microsoft Access зі створення бази даних. Мінімальний список характеристик, які потрібно врахувати в ході роботи. Ознайомлення з основними об'єктами СУБД.

    лабораторная работа [1,7 M], добавлен 21.04.2011

  • Створення і використання індексів та переглядів БД. Створення і використання тригерів, генераторів та збережених процедур на боці SQL-сервера. Отримання практичних навичок обміну даними між прикладенням і БД. Перегляд записів зв’язаних таблиць БД.

    лабораторная работа [1,9 M], добавлен 08.06.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.