Управление правами¶
Управление загрузкой документов¶
При внедрении библиотеки может потребоваться ограничить права на загрузку документов для определенных пользователей.
Типичные случаи¶
Типичные случаи, когда потребуется установить ограничение прав на уровне каталога:
- одна инсталляция ELiS используется группой библиотек и для каждой библиотеки выделено собственная ветвь каталога;
- требуется предоставить каждому отделу для оперативного управления собственную ветвь каталога;
- ELiS используется в качестве издательской ЭБС.
Модуль “Subj access” позволяет назначать пользователей с правом прикреплять документы в выбранный каталог или в любой из вложенных каталогов. При этом модуль не предотвращает загрузку документов вообще, его задача - предотвратить неавторизованное прикрепление документа в общий каталог.
Включение¶
Активируйте модуль и добавьте ролям библиотекарей или уполномоченных права “Use subj owner access”. Пользователи с этим правом при активированном модуле “Subj access” смогут указывать каталоги в качестве “родительского каталога”. Пользователи без этого права не смогут ни одному документу назначить родительский каталог.
Когда библиотекарь с правом “Use subj owner access” будет указывать конкретный каталог в качестве родительского, он не сможет добавить каталог у которого или у одного из родителей которого этот библиотекарь не является владельцем (owner).
Кроме “Use subj owner access”, модуль позволяет назначать выбранным ролям право “Subj access bypath”. Пользователи с этим правом будут обходить любые ограничения на размещения в каталоге. Такое право можно назначить группе глобальных библиотекарей или администраторам библиотеки.
Использование¶
Пусть надо нескольким разным библиотекам предоставить ограниченные права на их ветви каталога.
- Создайте для каждой библиотеки папки каталога.
- Заведите пользовательские аккаунты всех библиотекарей (не рекомендуется создавать для нескольких пользователей библиотеки один общий аккаунт).
- Назначьте владельцами папки каждой библиотеки ее сотрудников.
Все ограничения модуля Subj access срабатывают только в момент сохранения документа.
Пример¶
На представленном рисунке каталог составлен из трех библиотек. Автоматизатор центральной библиотеки имеет полный доступ ко всему каталогу.
Библиотекари филиалов ко всем вложенным папкам своих филиалов, а уполномоченные только к одной своей папке.
Ограничение прикрепления документов по пользователям¶
Перейдите к редактированию ноды каталога, доступ к прикреплению к которой унаследуют пользователи и установите в поле владельцев всех пользователей, которым разрешаете прикрепление документов в каталог.
Ограничение прикрепления документов по ролям (группам) пользователя¶
Перейдите в структуру управления типами документов, перейдите к редактированию полей материала типа subj: admin/structure/types/manage/subj/fields.
Перейдите к редактированию поля field_role_allow_attach и выберите роли, которым можно будет разрешать прикрепление документов. Сохраните поле.
Перейдите к редактированию ноды каталога, в которой вы увидите поле с ролями. Выберите роли, которым разрешено прикреплять документы.
При прикреплении документов действует правило: запрещено все что не разрешено. Чтобы пользователь мог прикреплять документ, достаточно чтобы он входил или в группу или был назначен владельцем индивидуально.
Отключение¶
Отключение модуля “Subj access” на работоспособность библиотеки влияния не окажет. Но ограничения на указание родительского каталога перестанут действовать.
Управление просмотром¶
В ELiS могут использоваться встроенные в Drupal механизмы ограничения доступа к материалам, в том числе реализуемые внешними модулями, однако надо иметь в виду, что на один файл PDF пораждается множество страниц и каждая из страниц является нодой и имеет собственные права доступа.
Также ELiS предоставляет собственные модули для контроля доступа к файлам PDF:
- доступ ограничивается по организациям, ассоциированным с пользователем;
- доступ разрешен с IP-адресов организации без регистрации пользователя;
- доступ отдельного пользователя к прикрепленным к нему в личном кабинете документам.
Для файлов PDF доступ к страницам и диапазонам страниц может открываться, что позволяет выборочно открывать доступ к избранным страницам, например к обложке (первой странице), содержанию, избранных фрагментов книги для любых пользователей.
Настройки доступа к конкретному документу устанавливаются при загрузке.
Доступ к подкаталогам (коллекциям) может устанавливаться на уровне организаций и пользователей. Доступ к каталогам наследуется по дереву каталога вниз (при этом может быть переопределен на нижележащем уровне каталога).
Организации, с которыми ассоциирован пользователь также могут образовывать иерархию по которой наследуются права на чтение, причем права предоставляются по дереву иерархии вниз. Пример: если есть иерархия “школа -> учащиеся -> 1 класс -> 1А класс” и на отдельный каталог или документ установлен доступ “1 класс”, то читать документ смогут пользователи, ассоциированы с одной из групп “1 класс” и “1А класс”.
Для файлов PDF и некоторых других ресурсов может быть задан запрет или разрешение на скачивание файла (разрешить скачивание без DRM-защиты). В случае разрешения скачивания без DRM-защиты, доступ к скачиванию будет предоставлен только тем, у кого есть доступ на чтение.
Для работы подсистемы ограничения доступа на чтение необходимо активировать модуль ELiS DRM.
К некоторым ресурсам требуется предоставить доступ ограниченному числу пользователей.
Это называется “конкурентной лицензией”. Одна конкурентная лицензия - один пользователь может смотреть ресурс.
В ELiS модуль ELiS DRM может контролировать доступ к любым ресурсам, имеющим специальное служебное поле field_concurrency_license типа “целое”.
Поле field_concurrency_license большее 0 означает сколько одновременных сессий могут открыть пользователи. Если поле не установлено или field_concurrency_license = 0, то число конкурентных лицензий не задано и число одновременных доступов не ограничивается.
Поле field_concurrency_license работает не как механизм открытия доступа, а как механизм закрытия, если число сессий превысило порог. При этом чтобы доступ был пользователю разрешен в виде занятия конкурентной лицензией, он должен иметь право на чтение ресурса.
В случае со скачиваемыми произведениями для которых запрещено скачивание без DRM, может возникнуть ситуация, что скачали все доступные ресурсы и тогда с сайта уже смотреть нельзя. Чтобы этого не происходило, можно создать поле field_concurrency_license_online типа “целое” и в нем указать сколько конкурентных лицензий зарезервировано для просмотра только с сайта. Это число должно быть меньше или равно числу конкурентных лицензий и если не задано или установлено в ноль, то скачивание ограничено только общим числом конкурентных лицензий.
Режим конкурентных лицензий работает таким образом, что считает конкурентным обращением каждое когда открывается плеер, т.о. если один пользователь откроет плеер в двух разных окнах плеер, это будет учитываться как два конкурентных обращения, по этой же причине не получиться делиться аккаунтом для одновременного доступа.
Обращаю внимание, что в ситуации когда можно скачать незащищенный документ, нет возможности узнать, что он был удален, поэтому такое скачивание не учитывается при контроле конкурентных лицензий.
Поля field_concurrency_license и field_concurrency_license_online не создаются при включении модуля ELiS DRM и их следует создавать в ручном режиме. Также следует учитывать, что поля используют данные ELiS PlayLog и будут работать только для тех ресурсов, для которых работает логирование.
Ограничение доступа к метаданным¶
При активации модуля ELiS DRM будет автоматически запущен контроль доступа к метаданным. Пользователи без прав доступа к документу (на чтение) не увидят и его основные метаданные.
Если пользователь имеет права на чтение книги, он всегда имеет доступ и к метаданным.
Доступ к метаданным управляется полем field_meta_open_access и имеет три позиции: открыт, закрыт, не установлен (наследуется по иерархии каталога). Если к метаданным будет разрешен открытый доступ, пользователи смогут увидеть описание книги даже при отсутствии доступа к документу.
Доступ к метаданным наследуется по каталогу. Если доступ к метаданным не установлен, он будет проверен у вышестоящих папок каталога до тех пор, пока не найдется родитель, в котором доступ к метаданным разрешается. Если ни у одного родителя не будет унаследован доступ к метаданным, доступ к метаданным будет запрещен.
Доступ к метаданным работает не только на документы, но и на каталог (папку каталога).
Если у пользователя нет доступа к метаданным каталога (и доступа к самому каталогу), вложенных в каталог документво он не увидит.
Это объстоятельство позволяет скрывать структуру подкаталога в случае, когда ее целесообразно скрыть от неавторизованного пользователя.
Для определенных ролей пользователей можно установить права на игнорирование ограничений доступа к метаданным “Игнорирование ограничения доступа на метаданные” в правах модуля ELiS DRM.