Управление доступом к данным.

Управление доступом к данным.

Основными понятиями процесса разграничения доступа к объектам ОС являются объект доступа, метод доступа к объекту и субъект доступа.

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

Методом доступа к объекту называется операция, определенная для объекта. Тип операции зависит от объектов. Например, процессор может только выполнять команды, сегменты памяти могут быть записаны и прочитаны, считыватель магнитных карт может только читать, а для файлов могут быть определены методы доступа «чтение», «запись» и «добавление» (дописывание информации в конец файла).Субъектом доступа называют любую сущность, способную инициировать выполнение операций над объектами (обращаться к объектам по некоторым методам доступа). Обычно полагают, что множество субъектов доступа и множество объектов доступа не пересекаются. Иногда к субъектам доступа относят процессы, выполняющиеся в системе. Однако логичнее считать субъектом доступа именно пользователя, от имени которого выполняется процесс. Естественно, под субъектом доступа подразумевают не физического пользователя, работающего с компьютером, а «логического» пользователя, от имени которого выполняются процессы ОС.

Таким образом, объект доступа — это то, к чему осуществляется доступ, субъект доступа — это тот, кто осуществляет доступ, и метод доступа — это то, как осуществляется доступ.

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

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

  • избирательное управление;
  • мандатное управление;
  • ролевое.

— Избирательное управление доступом основано на использовании матрицы доступа, в которой по одному измерению перечисляются субъекты доступа, а по второму – объекты, к которым доступ должен предоставляться. На пересечении конкретных строк и столбцов прописываются права доступа субъекта к объекту. Права назначает либо владелец объекта, либо привилегированный пользователь (системный технолог, администратор базы данных).Избирательное управление доступом — Википедия

— Мандатное управление доступом основано на назначении грифов доступа для объектов и выдаче субъектам разрешений на обращение к информации с определенными грифами, что предотвращает нежелательное использование защищаемой информации. Данный подход уходит корнями в традиционное делопроизводство, в котором использовались грифы «Секретно», «Совершенно секретно», «Для служебного пользования» (ДСП). 

Мандатная модель управления доступом (MAC): обзор и применение в прикладных  системах / Блог компании Avanpost / Хабр

Рис. 2 — пример мандатного управления доступом

— Управление доступом на основе ролей есть развитие политики избирательного управления доступом, при которой права доступа субъектов системы на объекты группируются, образуя так называемые роли. Роли представляют собой совокупность прав доступа на объекты. Они позволяют упростить назначение нрав большому числу пользователей и обеспечить оперативное их изменение при необходимости модифицировать политику информационной безопасности, так как индивидуальное назначение и переназначение прав доступа при большом числе сотрудников представляет собой весьма трудоемкую операцию, к тому же чреватую ошибками.

IT Pro: Управление доступом на базе ролей (RBAC) в Citrix XenServer 7

Рис. 3 — пример управления на основе ролей

Список прав доступа ACL. 

Access Control List или ACL — список управления доступом, который определяет, кто или что может получать доступ к объекту (программе, процессу или файлу), и какие именно операции разрешено или запрещено выполнять субъекту (пользователю, группе пользователей). Каждая колонка в матрице может быть реализована как список доступа для одного объекта. Очевидно, что пустые клетки могут не учитываться. В результате для каждого объекта имеем список упорядоченных пар <domain, rights-set=»»>, который определяет все домены с непустыми наборами прав для данного объекта. Элементами списка прав доступа ACL могут быть процессы, пользователи или группы пользователей. При реализации широко применяется предоставление доступа по умолчанию для пользователей, права которых не указаны. Например, в ОС Unix все субъекты-пользователи разделены на три группы (владелец, группа и остальные), и для членов каждой группы контролируются операции чтения, записи и исполнения (rwx). В итоге имеем ACL — 9-битный код, который является атрибутом разнообразных объектов Unix.

A typical Access Control List (ACL) | Download Scientific Diagram

Рис. 4 — пример Access Control List

Графические утилиты для управления доступом к файлам и каталогам:

muCommander — универсальный файловый менеджер

muCommander

Рис. 5 — muCommander — универсальный файловый менеджер

muCommander обещает четкую работу одновременно в двух окнах. Вы можете легко сопоставлять или перемещать контент с помощью мыши. Дополнительный менеджер закладок обеспечивает неплохой обзор. Однако одним из условий запуска программы на вашем компьютере будет установка Java Runtimes.

MuCommander создает виртуальную файловую систему. Он поддерживает, помимо прочего, локальные разделы, такие как FTP, SFTP, SMB, NFS или HTTP, а также позволяет создавать, просматривать и упаковывать такие каталоги, как ZIP, RAR, TAR, GZip, BZip2, ISO / NRG, AR / Deb и LST.

Стоимость: Бесплатно

2Directory Opus: альтернатива Total Commander со множеством функций

directory-opus

Рис. 6 — Directory Opus — Управление данными со множеством дополнительных функций

Если вы решили навести порядок в своих данных, Directory Opus Client станет тем самым универсальным помощником, без которого не обойтись. Ведь он объединяет функции Windows Explorer с FTP-клиентом и музыкальным проигрывателем, а также предлагает возможность конвертировать фотографии во многие форматы.

В Directory Opus встроен FTP-клиент, музыкальный проигрыватель и файловый упаковщик. Вы также можете конвертировать изображения в другие форматы.
Расширенные функции, такие как поиск дублирующих файлов, модификация MP3-тегов и очень удобная и мощная функция поиска, очень разнообразят меню менеджера.

Стоимость: от 49 евро

3FreeCommander: Прогрессивный проводник

FreeCommander.XE

Рис. 7 — FreeCommander — Прогрессивный Explorer

Эта программа позволяет управлять данными одновременно в двух окнах, поэтому вы можете перемещать файлы, просто перетаскивая их из директории в директорию. Помимо просмотра изображений и видео, FreeCommander позволяет управлять каталогами ZIP, RAR и CAP.

Стоимость: Бесплатно

4Xplorer 2 Lite: одновременная работа

xplorer2_lite

Рис. 8 — Xplore2 Lite — синхронная работа

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

Стоимость: Бесплатно

5Far Manager: простой в управлении

Far

Рис. 9 — Far Manager — простота без проблем

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

Стоимость: Бесплатно

WinRAR: файловый менеджер тысячелетия

WinRAR — Википедия

Рис.10 — файловый менеджер всеми узнаваемый

WinRAR — архиватор файлов для 32- и 64-разрядных операционных систем Windows (также существуют или существовали версии для Android, Linux, FreeBSD, macOS, MS-DOS, Windows Mobile), позволяющий создавать, изменять и распаковывать архивы RAR и ZIP, а также работать с множеством архивов других форматов.

Стоимость: 29 долларов

Total Commander: любимец интеллектуалов

Total Commander - скачать бесплатно Total Commander 9.51

Рис. 11 — супер пупер файловый менеджер

Total Commander — файловый менеджер с закрытым исходным кодом, работающий на платформах Microsoft Windows и Android.

Стоимость: Бесплатно

Утилиты командной строки:

Команда iCACLS – управление доступом к файлам и папкам.

Команда iCACLS позволяет отображать или изменять списки управления доступом (Access Control Lists (ACLs) к файлам и папкам файловой системы. Утилита iCACLS.EXE является дальнейшим усовершенствованием утилиты управления доступом CACLS.EXE.

Управление доступом к объектам файловой системы NTFS реализуется с использованием специальных записей в таблице MFT (Master File Table). Каждому файлу или папке файловой системы NTFS соответствует запись в таблице MFT, содержащая специальный дескриптор безопасности SD (Security Descriptor). Каждый дескриптор безопасности содержит два списка контроля доступа:

System Access-Control List (SACL) — системный список управления доступом .

Discretionary Access-Control List (DACL) — список управления избирательным доступом.

SACL управляется системой и используется для обеспечения аудита попыток доступа к объектам файловой системы, определяя условия при которых генерируется события безопасности. В операционных системах Windows Vista и более поздних, SACL используется еще и для реализации механизма защиты системы с использованием уровней целостности ( Integrity Level, IL).

DACL — это собственно и есть список управления доступом ACL в обычном понимании. Именно DACL формирует правила, определяющие, кому разрешить доступ к объекту, а кому — запретить.

Каждый список контроля доступа (ACL) представляет собой набор элементов (записей) контроля доступа — Access Control Entries, или ACE) . Записи ACE бывают двух типов (разрешающий и запрещающий доступ), и содержит три поля:

  • SID пользователя или группы, к которому применяется данное правило
  • Вид доступа, на которое распространяется данное правило
  • Тип ACE — разрешающий или запрещающий.

    SID — Security ID – уникальный идентификатор, который присваивается каждому пользователю или группе пользователей в момент их создания. Посмотреть примеры SID можно , например с помощью команды WHOAMI /ALL. Как видим, система управления доступом к объектам NTFS оперирует не именами, а идентификаторами SID. Поэтому, например нельзя восстановить доступ к файлам и папкам, существовавший для удаленного из системы пользователя, создав его заново с тем же самым именем – он получит новый SID и правила записей ACE, применяемые к старому идентификатору SID, выполняться не будут.

    При определении результатов запросов на доступ к объектам файловой системы NTFS применимы следующие правила:
  • Если в дескрипторе безопасности отсутствует DACL , то объект считается незащищенным, т.е. все имеют к нему неограниченный доступ.
  • Если DACL существует, но не содержит ни одного элемента ACE, то доступ к объекту закрыт для всех.

    Для того чтобы изменить DACL объекта, пользователь (процесс) должен обладать правом записи в DACL (WRITE_DAC — WDAC). Право записи может быть разрешено или запрещено, с помощью утилиты icalc.exe, но даже если установлен запрет, все равно разрешение на запись имеется хотя бы у одного пользователя владельца файла или папки (поле Owner в дескрипторе безопасности), так как владелец всегда имеет право изменять DAC.

    Варианты применения команды iCACLS:
  • ICACLS имя /save ACL_файл [/T] [/C] [/L] [/Q] — сохранение DACL для файлов и папок, соответствующих имени, в ACL-файл для последующего использования с командой /restore. Обратите внимание, что метки SACL, владельца и целостности не сохраняются.
  • ICACLS каталог [/substitute SidOld SidNew […]] /restore ACL_файл [/C] [/L] [/Q] — применение ранее сохраненных DACL к файлам в каталоге.
  • ICACLS имя /setowner пользователь [/T] [/C] [/L] [/Q] — смена владельца всех соответствующих имен. Этот параметр не предназначен для принудительной смены владельца; используйте для этой цели программу takeown.exe.
  • ICACLS имя /findsid Sid [/T] [/C] [/L] [/Q] — поиск всех соответствующих имен, содержащих ACL с явным упоминанием ИД безопасности.
  • ICACLS имя /verify [/T] [/C] [/L] [/Q] — поиск всех файлов с неканоническими ACL или длинами, не соответствующими количеству ACE.
  • ICACLS имя /reset [/T] [/C] [/L] [/Q] — замена ACL на унаследованные по умолчанию для всех соответствующих файлов.
  • ICACLS имя [/grant[:r] Sid:perm[…]] [/deny Sid:perm […]] [/remove[:g|:d]] Sid[…]] [/T] [/C] [/L] [/Q] [/setintegritylevel Level:policy[…]]

    /grant[:r] Sid:perm — предоставление указанных прав доступа пользователя. С параметром :r эти разрешения заменяют любые ранее предоставленные явные разрешения. Без параметра :r разрешения добавляются к любым ранее предоставленным явным разрешениям.

    /deny Sid:perm — явный отзыв указанных прав доступа пользователя. Добавляется ACE явного отзыва для заявленных разрешений с удалением этих же разрешений в любом явном предоставлении.

    /remove[:[g|:d]] Sid — удаление всех вхождений ИД безопасности в ACL. С параметром :g удаляются все вхождения предоставленных прав в этом ИД безопасности. С параметром :d удаляются все вхождения отозванных прав в этом ИД безопасности.

    /setintegritylevel [(CI)(OI)]уровень — явное добавление ACE уровня целостности ко всем соответствующим файлам. Уровень задается одним из следующих значений:

    L[ow]: низкий

    M[edium]: средний

    H[igh]: высокий

    Уровню могут предшествовать параметры наследования для ACE целостности, применяемые только к каталогам.

    Механизм целостности Windows Vista и более поздних версий ОС, расширяет архитектуру безопасности путём определения нового типа элемента списка доступа ACE для представления уровня целостности в дескрипторе безопасности объекта (файла, папки). Новый ACE представляет уровень целостности объекта. Он содержится в системном ACL (SACL), который ранее используемом только для аудита. Уровень целостности также назначается токену безопасности в момент его инициализации. Уровень целостности в токене безопасности представляет уровень целостности (Integrity Level, IL) пользователя (процесса). Уровень целостности в токене сравнивается с уровнем целостности в дескрипторе объекта когда монитор безопасности выполняет проверку доступа. Система ограничивает права доступа в зависимости от того выше или ниже уровень целостности субъекта по отношению к объекту, а также в зависимости от флагов политики целостности в соответствующей ACE объекта. Уровни целостности (IL) представлены идентификаторами безопасности (SID), которые представляют также пользователей и группы, уровень которых закодирован в относительном идентификаторе (RID) идентификатора SID. Наиболее распространенные уровни целостности:

    SID = S-1-16-4096 RID=0x1000 — уровень Low (Низкий обязательный уровень)

    SID= S-1-16-8192 RID=0x2000 – уровень Medium (Средний обязательный уровень)

    SID= S-1-16-12288 RID=0x3000 – уровень High (Высокий обязательный уровень)

    SID= S-1-16-16384 RID=0x4000 – уровень системы (Обязательный уровень системы).

    /inheritance:e|d|r

    e — включение наследования

    d — отключение наследования и копирование ACE

    r — удаление всех унаследованных ACE

    ИД безопасности могут быть в числовой форме (SID), либо в форме понятного имени (username). Если задана числовая форма, добавьте * в начало ИД безопасности, например — *S-1-1-0. Параметры командной строки iCACLS:

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

    /C — выполнение операции продолжается при любых файловых ошибках. Сообщения об ошибках по-прежнему выводятся на экран.

    /L — операция выполняется над самой символьной ссылкой, а не над ее целевым объектом.

    /Q — утилита ICACLS подавляет сообщения об успешном выполнении.

    Утилита ICACLS сохраняет канонический порядок записей ACE:

    Явные отзывы

    Явные предоставления

    Унаследованные отзывы

    Унаследованные предоставления

    разрешение — это маска разрешения, которая может задаваться в одной из двух форм:
  • последовательность простых прав:

    N — доступ отсутствует

    F — полный доступ

    M — доступ на изменение

    RX — доступ на чтение и выполнение

    R — доступ только на чтение

    W — доступ только на запись

    D — доступ на удаление
  • список отдельных прав через запятую в скобках:

    DE — удаление
    RC — чтение
    WDAC — запись DAC
    WO — смена владельца
    S — синхронизация
    AS — доступ к безопасности системы
    MA — максимально возможный
    GR — общее чтение
    GW — общая запись
    GE — общее выполнение
    GA — все общие
    RD — чтение данных, перечисление содержимого папки
    WD — запись данных, добавление файлов
    AD — добавление данных и вложенных каталогов
    REA — чтение дополнительных атрибутов
    WEA — запись дополнительных атрибутов
    X — выполнение файлов и обзор папок
    DC — удаление вложенных объектов
    RA — чтение атрибутов
    WA — запись атрибутов

    Права наследования могут предшествовать любой форме и применяются только к каталогам:

    (OI) — наследование объектами

    (CI) — наследование контейнерами

    (IO) — только наследование

    (NP) — запрет на распространение наследования

    (I) — наследование разрешений от родительского контейнера

    Примеры использования iCACLS:

    icacls — запуск без ключей используется для получения краткой справки по использованию команды.

    icacls C:\Users — отобразить список управления доступом для папки C:\Users. Пример отображаемой информации:

    C:\Users NT AUTHORITY\система:(OI)(CI)(F)
    BUILTIN\Администраторы:(OI)(CI)(F)
    BUILTIN\Пользователи:(RX)
    BUILTIN\Пользователи:(OI)(CI)(IO)(GR,GE)
    Все:(RX)
    Все:(OI)(CI)(IO)(GR,GE)

    Успешно обработано 1 файлов; не удалось обработать 0 файлов


    icacls c:\windows\* /save D:\win7.acl /T — сохранение ACL для всех файлов в каталоге c:\windows и его подкаталогах в ACL-файл D:\win7.acl. Сохраненные списки ACL позволят восстановить управление доступом к файлам и каталогам в исходное состояние, поэтому, прежде чем выполнять какие-либо изменения, желательно иметь файл сохраненных списков ACL.

    Пример данных сохраненных списков доступа ACL:

    acpimof.dll

    D:AI(A;ID;FA;;;SY)(A;ID;FA;;;BA)(A;ID;0x1200a9;;;BU)

    addins

    D:PAI(A;;FA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;CIIO;GA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;;0x1301bf;;;SY)(A;OICIIO;GA;;;SY)(A;;0x1301bf;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;OICIIO;GA;;;CO)

    AppCompat

    D:AI(A;ID;FA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;CIIOID;GA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;ID;FA;;;SY)(A;OICIIOID;GA;;;SY)(A;ID;FA;;;BA)(A;OICIIOID;GA;;;BA)(A;ID;0x1200a9;;;BU)(A;OICIIOID;GXGR;;;BU)(A;OICIIOID;GA;;;CO)

    В тех случаях, когда при выполнении команды iCACLS возникает ошибка, вызванная отказом в доступе к обрабатываемому объекту, можно продолжить выполнение команды, если задан параметр /C:

    icacls «C:\System Volume Information\*» /save D:\SVI-C.acl /T /C — сохранение списков управления доступом ACL для всех файлов и подкаталогов каталога C:\System Volume Information с продолжением обработки в случае возникновения ошибки. По результатам обработки отображается сообщение о количестве успешно, и не успешно, обработанных файлов.

    Для восстановления доступа к файлам и папкам используется параметр /restore:

    icacls c:\windows\ /restore D:\win7.acl — восстановление списков контроля доступа к файлам и папкам каталога c:\windows из ранее сохраненного ACL-файла D:\win7.acl.

    icacls C:\Users\user1\tmp\Myfile.doc /grant boss:(D,WDAC) — предоставление пользователю boss разрешений на удаление и запись DAC для файла C:\Users\user1\tmp\Myfile.doc.

    icacls C:\Users\user1\tmp\Myfile.doc /grant *S-1-1-0:(D,WDAC) — предоставление пользователю с ИД безопасности S-1-1-0 (группа ”Все”) разрешений на удаление и запись DAC для файла C:\Users\user1\tmp\Myfile.doc . icacls C:\Users\user1\tmp\Myfile.doc /grant boss:F — предоставление пользователю boss полного доступа к файлу C:\Users\user1\tmp\Myfile.doc.

Управление доступом к данным.: 1 комментарий

Добавить комментарий