Программное обеспечение для администрирования учетных данных пользователей

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 14.02.2022
Размер файла 1,8 M

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

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

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

Программное обеспечение для администрирования учетных данных пользователей

А.С. Самсонкин, Д.В. Такташкин, Е.А. Дзюба 1 2' 3 Пензенский государственный университет, Пенза, Россия

Аннотация

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

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

Чтобы пользоваться интернет-ресурсами, обычно необходимо ввести пару логин-пароль. Обычно в разных приложениях используется одна и та же пара. В таком случае, если на одном ресурсе произойдет утечка, то под угрозой будут и все остальные. Пострадавший пользователь, скорее всего, об этом не узнает, а, если узнает, ему предстоит изменить пароли на всех сайтах и во всех приложениях. Именно поэтому важно использовать разные пароли. Правда, в таком случае их количество может доходить до нескольких сотен. Запоминать такое наизусть практически невозможно, на листочке писать неудобно. Хранение паролей в текстовом файле очень не безопасно.

Поэтому необходимо специализированное ПО. Бесплатные аналоги довольно сложно найти, и они уступают платным конкурентам [1].

Рассмотрим популярные решения. Они разделяются на премиум, бесплатные и открытые.

Из премиум-программ рассмотрим Dashlane и LastPass. Dashlane является платным решением [2]. LastPass за оплату предлагает ряд дополнительных функций [3]. Их преимущество состоит в том, что они работают на всех основных платформах, присутствует синхронизация между устройствами и другие возможности, которые доступны при платной подписке [2, 3]. Не каждый пользователь в состоянии оплачивать подписку ежемесячно.

Google Password Manager и Apple Keychain являются бесплатными закрытыми решениями с отличным качеством. Они, как и премиум-аналоги, имеют синхронизацию. Их главным недостатком является то, что они работают исключительно в рамках своей экосистемы (Google только в Android и Chrome, Apple Keychain только в macOS и iOS) [4].

Keychain является открытым аналогом. Он работает на всех основных платформах, полностью бесплатный, не привязан к экосистеме, а также имеет открытый исходный © Самсонкин А. С., Такташкин Д. В., Дзюба Е. А., 2021 код. Принципиальный отказ от синхронизации, с одной стороны, повышает безопасность, с другой - крайне неудобен для рядового пользователя (особенно на устройствах Apple) [5].

Любой менеджер паролей должен сохранять, обновлять и удалять учетные данные, а также шифровать хранилище с использованием мастер-пароля [6].

Подробная диаграмма вариантов использования приложения для администрирования учетных записей пользователей показана на рис. 1.

Рис. 1. Диаграмма вариантов использования

Для разработки приложения были использованы следующие технологии:

- объектно-ориентированный подход;

- object-relational mapping (ORM);

- кроссплатформенная разработка.

Объектно-ориентированный подход является ключевым аспектом в реализации модульной архитектуры, ORM необходим для простого и безопасного доступа к базе данных [7]. Кроссплатформенная разработка хорошо решает задачу удешевления и ускорения процесса разработки [8].

Исходя из этого, был использован следующий стек технологий:

- Kotlin MPP;

- Flutter;

- SQLite;

- SQLDelight;

- Git.

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

Так как Kotlin MPP не поддерживает создание кроссплатформенных интерфейсов, то для их разработки был использован Flutter.

В качестве локальной системы управления базой данных (СУБД) использовался SQLite. В качестве ORM выбран фреймворк, специально разработанный для SQLite и Kotlin - SQLDelight.

Таким образом программа реализована на языках Kotlin и Dart. Макеты интерфейса проектировались с помощью Figma. В качестве системы контроля версий был использован Git.

На рис. 2 представлена диаграмма классов [9]. Все классы сгруппированы по модулям. Для разных платформ могут создаваться и использоваться разные модули. Также можно использовать другие реализации модулей, например, вместо AES другой алгоритм шифрования.

Для ПО были разработаны четыре окна интерфейса:

1) окно входа;

2) список учетных данных;

3) окно настройки учетной записи;

4) окно настройки приложения.

На рис. 3 показаны модули, из которых состоит ядро разработанной программы [9]. Для разных платформ могут использоваться разные модули, например, для мобильных платформ и для браузера используются разные реализации хранилищ (з1:ога§е.тоЫ1е и з1:ога§е.Ьго'№8ег соответственно). Остальные модули являются кроссплатформенными.

Рис. 3. Диаграмма компонентов

программный обеспечение информационный безопасность

Благодаря выбору такой архитектуры и стека технологий описываемая программа имеет следующие качества:

- кроссплатформенность по умолчанию;

- компактность и простоту кодовой базы;

- гибкость внесения изменений;

- простой и надежный способ обращения к базам данных.

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

Благодаря компактности и простоте реализации код можно легко прочитать, изменить, отладить. Более простой код также более надежен.

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

ORM облегчает работу с СУБД и предоставляет безопасное по типам обращение [7].

Так как ядро рассматриваемой программы является библиотекой и не имеет пользовательского интерфейса, единственным вариантом тестирования такого решения остаются Unit-тесты [10]. Они проводились на всех модулях и целевых платформах. Разработанные тесты были пройдены успешно.

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

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

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

Список литературы

1. Как создать надежный пароль и защитить аккаунт. URL: https://support.google.com (дата обращения: 20.04.2021).

2. How it works - Dashlane. URL: https://www.dashlane.com (дата обращения: 20.04.2021).

3. How it works - LastPass. URL: https://www.lastpass.com (дата обращения: 20.04.2021).

4. Mac OS X Security. URL: https://web.archive.org (дата обращения: 20.04.2021).

5. KeePass features. URL: https://keepass.info (дата обращения: 20.04.2021).

6. Как выбрать менеджер паролей? URL: https://blog.avast.com (дата обращения: 20.04.2021).

7. Введение в ORM. URL: http://internetka.in.ua (дата обращения: 20.04.2021).

8. Самсонкин А. С., Такташкин Д. В. Обзор и сравнительный анализ кроссплатформенных средств разработки // Информационные технологии в науке и образовании. Проблемы и перспек¬тивы : сб. тр. VIII Ежегодной Всерос. межвуз. науч.-практ. конф. Пенза : Изд-во ПГУ, 2021. URL: elibrary.ru

9. UML Web Site. URL: https://www.uml.org (дата обращения: 20.04.2021).

10. Unit test - definition. URL: https://www.artofunittesting.com (дата обращения: 20.04.2021).

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

...

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

  • Обоснование необходимости систем управления базами данных на предприятиях. Особенности разработки программного обеспечения по управлению базой данных, обеспечивающего просмотр, редактирование, вставку записей базы данных, формирование запросов и отчетов.

    курсовая работа [1,5 M], добавлен 23.01.2010

  • Техническое задание для разработки программного обеспечения "Больница". Обоснования для проведения разработки. Цель, назначение подсистемы. Требования ко всем видам обеспечения программы. Общесистемное программное обеспечение. Применение языка Delphi 6.0.

    курсовая работа [832,9 K], добавлен 18.01.2010

  • Предварительная настройка и организация учетной записи пользователя. Правила для отображаемых имен. Политики паролей и учетных записей. Принудительные ограничения входа пользователей. Настройка политик блокировки учетных записей и ее пороговое значение.

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

  • Сетевая система контроля знаний студентов на основе объектно-ориентированного подхода. Выбор программно-технических средств для реализации проекта. Алгоритмическое и программное обеспечение, интерфейс пользователя. Разработка элементов базы данных.

    дипломная работа [1,3 M], добавлен 04.02.2013

  • Информационная безопасность для системы "Составление расписания". Обеспечения защиты данных в системе, разрабатываемой для учебной части и методы практической реализации обеспечения безопасности этих данных. Обеспечение защиты от потери информации.

    курсовая работа [203,3 K], добавлен 30.11.2008

  • Задачи администрирования автоматизированных систем. Характеристика автоматизированной системы "Следственный комитет". Проблемы администрирования подсистемы Public Relation. Варианты зеркалирования данных. Обеспечение защиты сервера и журнал регистрации.

    курсовая работа [2,3 M], добавлен 27.10.2012

  • Проектирование схемы реляционной базы данных торговой компании. Создание диаграмм последовательности (Sequence Diagram) и кооперативных диаграмм (Collaboration diagram). Автоматическая генерация кода нескольких компонентов средствами Rational Rose.

    курсовая работа [2,0 M], добавлен 26.06.2015

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

    контрольная работа [2,3 M], добавлен 23.01.2014

  • Понятие администрирования баз данных, функции и роли администраторов. Управление целостностью данных в системах управления базами данных, буферизация, транзакция, журнализация. Управление безопасностью в системах, источники нарушения целостности данных.

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

  • Порядок разработки автоматизированной системы обработки данных, состоящей из базы данных, программного приложения, разработанного для нее в СУБД Access и связанного с САПР AutoCAD. Получение и просмотр отчетов и графических материалов по программе.

    курсовая работа [1,9 M], добавлен 03.07.2012

  • Оптимизация запросов. Технические аспекты администрирования базы данных. Нераспределенные мультибазовые СУБД. Фрагментация и репликация, шифрование баз данных. Управление каталогом. Распределенная обработка запросов. Разновидность систем клиент-сервер.

    курсовая работа [55,9 K], добавлен 21.06.2016

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

    курсовая работа [163,4 K], добавлен 20.01.2010

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

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

  • Основные этапы разработки программного обеспечения (пакета программ), анализ требований к системе. Метод пошаговой детализации. Языки программирования низкого уровня и высокого уровня (императивные, объектно-ориентированные, функциональные, логические).

    презентация [41,4 K], добавлен 13.10.2013

  • Аннуитетная схема погашения кредита. Клиент-серверные сообщения, их обработка. Хранение данных, структура базы. Алгоритм формирования цен и курса валют. Визуализация данных на стороне клиента. Результат обработки стратегии. Система администрирования.

    дипломная работа [745,8 K], добавлен 08.12.2013

  • Порядок автоматизации расчетов себестоимости и длительности программного обеспечения производственного предприятия. Выбор языка программирования и системы управления базами данных. Разработка алгоритмов расчета себестоимости программного обеспечения.

    дипломная работа [1,7 M], добавлен 13.06.2017

  • Сущность понятия "тип данных". Объектно-ориентированный стиль программирования. Простые типы данных в языке Паскаль: порядковые, вещественные, дата-время. Булевский (логический) тип. Синтаксис определения ограниченного типа. Регулярные типы (массивы).

    реферат [24,1 K], добавлен 01.12.2009

  • Разработка прикладного программного обеспечения деятельности отдела кадров университета в среде Microsoft Access 2003. Характеристика этапов проектирования базы данных. Построение семантической модели. Нормализация данных, понятие нормальной формы.

    курсовая работа [4,4 M], добавлен 14.11.2012

  • Выбор средств разработки. Написание сценариев PHP. Разработка базы данных MySQL. Описания организации иерархической многопользовательской модульной структуры сайта с возможностью управления содержанием. Создание средств для удаленного администрирования.

    практическая работа [4,8 M], добавлен 12.06.2013

  • Изучение существующих методов и программного обеспечения для извлечения числовых данных из графической информации. Программное обеспечение "graphtrace", его структура и методы обработки данных. Использование этой системы для данных различного типа.

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

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