Управлять доступом команды
Доступ складывается из двух вещей: что можно делать (роль — набор прав) и кому и где (назначение роли человеку на исследование, центр или всю организацию). Здесь — как выдать, сузить, отозвать и проверить доступ.
Кому и когда
Заголовок раздела «Кому и когда»Администратор — администратор доступа. Права:
- назначать и отзывать роли, выдавать и отзывать отдельные права —
access.grant; - создавать и править роли —
role.manage; - заводить и деактивировать учётные записи —
principal.manage; - просматривать выданные гранты и роли —
access.read.
Задача возникает, когда в команду приходит новый человек, когда кто-то присылает запрос на доступ («Нет доступа»), когда меняются обязанности и когда человек уходит из исследования.
Перед началом
Заголовок раздела «Перед началом»- У вас самого есть право выдавать доступ там, где вы собираетесь его выдать: выдать доступ шире собственного нельзя.
- Решите, где человеку нужен доступ. Право распространяется вниз по иерархии: назначение на исследование даёт доступ ко всем его центрам и субъектам. Нужен один центр — назначайте на центр.
- Нужная роль уже есть в каталоге Роли — или создайте её из шаблона (ниже).
-
Откройте Администрирование → Пользователи и карточку человека. Новый человек? Нажмите Пригласить пользователя — приглашение сразу предлагает роль; если пропустили, кнопка Назначить роль сейчас в итоге приглашения откроет его карточку.
-
Нажмите Назначить роль.
-
Выберите роль и где она действует: вся организация, исследование или его центр. Путь строится по порядку исследование → центр → субъект без пропусков.
-
При необходимости задайте срок — Действует до. Пусто — бессрочно. Все метки времени хранятся в UTC.
-
Нажмите Назначить. Появится «Роль назначена».
Ответить на запрос доступа
Заголовок раздела «Ответить на запрос доступа»Когда человеку не хватает прав, вместо экрана он видит Нет доступа с одной фразой — какое право нужно и где, например: «Нужно право «Чтение аудиторского следа» в «X7-DEMO-001». Его выдаёт администратор доступа». Кнопка Скопировать запрос администратору кладёт в буфер готовый текст (кто, какое право, где, идентификатор запроса); технические подробности — под ссылкой Подробности для администратора. Получив такой запрос, откройте карточку человека и назначьте роль или выдайте право ровно там, где оно нужно.
Создать роль из шаблона
Заголовок раздела «Создать роль из шаблона»-
В Администрирование → Роли нажмите Создать из шаблона.
-
Выберите шаблон (дизайнер исследования, координатор центра, врач-исследователь, монитор, дата-менеджер, медицинский монитор, медицинский кодировщик, инспектор, администратор). Имя можно оставить пустым — тогда возьмётся имя шаблона.
-
Роль создастся с набором прав шаблона. Откройте её страницу, чтобы уточнить набор: права сгруппированы по объектам, права модулей — под своим модулем.
-
Сохраните изменения.
Выдать или запретить отдельное право
Заголовок раздела «Выдать или запретить отдельное право»Для исключений человеку можно выдать отдельное право напрямую: кнопка Выдать право в его карточке.
- Разрешить — конкретное право в конкретном месте.
- Запретить — точечный запрет, который всегда побеждает любое разрешение на пути: исключение, которое не перекроет ни одна роль.
Ограничить ввод отдельной формы
Заголовок раздела «Ограничить ввод отдельной формы»-
Дизайнер помечает форму меткой ограничения ввода (свойство формы в конструкторе, например
lab). -
Платформа автоматически добавляет в каталог право «Ввод в формы с меткой “lab”» (
form.entry.lab). -
Соберите роль выделенного вводчика — например, «Вводчик от лаборатории»: обычные права ввода плюс
form.entry.lab— и назначьте её нужным людям там, где нужно.
Отозвать доступ
Заголовок раздела «Отозвать доступ»В карточке человека нажмите Отозвать у назначения роли или у отдельного права (держателей роли можно отозвать и на странице роли) и подтвердите. Назначение закрывается с этой минуты.
Проверить, почему у человека есть или нет доступа
Заголовок раздела «Проверить, почему у человека есть или нет доступа»-
Откройте карточку человека в Пользователях, раздел Проверить доступ.
-
Укажите, где проверить: организация, исследование или центр, и нажмите Проверить.
-
Система покажет по каждому применимому праву итог разрешено или запрещено и источник решения: какая роль («роль «…» в «…»») или какое право, выданное напрямую («личное право в «…»», «запрет в «…»»).
Что произойдёт
Заголовок раздела «Что произойдёт»- Новый доступ действует немедленно: рабочие списки и очереди строятся из прав, а не из закешированных ролей. Отзыв и истечение срока тоже действуют сразу.
- Каждое назначение, выдача, запрет и отзыв записываются в аудиторский след.
- Отзыв не удаляет запись: назначение закрывается, история сохраняется.
- Если на основании отзываемого права кто-то получил делегированный доступ, он отзывается вместе с ним — система предупреждает и показывает, сколько делегированных прав закрыто. «Висячего» доступа без основания не бывает.
- Проверка доступа ничего не меняет — только объясняет решение.
Если не получилось
Заголовок раздела «Если не получилось»- Нет кнопок «Назначить роль», «Выдать право», «Отозвать» — нет права
access.grantв этой области. - Нельзя создать или изменить роль — нет права
role.manage. - Назначение или выдача отклонены — вы пытаетесь выдать доступ шире собственного. Попытка отклоняется и фиксируется в аудите (защита от самоэскалации).
- Предупреждение о совмещении обязанностей (SoD) — опасное сочетание прав у одного лица: правило block не даст назначить, warn разрешит, но факт попадёт в аудит. См. SoD и делегирование.
- Человек всё равно не видит нужного — запустите Проверить доступ: возможно, на пути стоит запрет, срок назначения истёк или учётная запись деактивирована.
- Валидатор дизайна предупреждает «заполнить форму будет некому» — у формы стоит метка
ограничения ввода, а право
form.entry.<метка>не держит никто.
Подробнее
Заголовок раздела «Подробнее»Где управляют доступом
Заголовок раздела «Где управляют доступом»| Где | Что там |
|---|---|
| Администрирование → Роли | каталог ролей организации; на странице роли — её права и все держатели |
| Администрирование → Пользователи | карточка человека: его роли, права, выданные напрямую, проверка доступа |
Управлять одним человеком можно только из его карточки — других мест для этого нет. Состав команды конкретного исследования удобно смотреть и пополнять на его странице Команда.
Доступ выдаётся учётной записи. Чаще всего это человек, но учётную запись имеет и модуль (её права подтверждаются при включении модуля). В Пользователях видны все учётные записи организации.
Роли — данные организации
Заголовок раздела «Роли — данные организации»Роль — это данные организации: шаблон копируется и дальше свободно редактируется. В каталоге видно, сколько у роли прав и активных назначений. Назначение связывает человека × роль × место × срок — именно здесь роль превращается в реальный доступ.
Ограничение ввода формы
Заголовок раздела «Ограничение ввода формы»Частый регламент: лабораторные результаты заполняет только вводчик от лаборатории,
фарм-учёт — только расслеплённый фармацевт, а остальные видят эти формы «только чтение». Метка
ограничения ввода — часть дизайна: версионируется и попадает в дифф поправок. Запись в
помеченную форму требует обоих прав: у координатора без form.entry.lab форма
открывается «только чтение» с поясняющим баннером (запросы, SDV и обзор продолжают работать),
а вводчик лаборатории заполняет её штатно.
Как система принимает решение
Заголовок раздела «Как система принимает решение»Проверка доступа воспроизводит ту же логику, что и весь движок доступа: собираются все применимые права сверху вниз по пути, любой запрет побеждает, а при отсутствии применимых прав действует запрет по умолчанию. Если учётная запись деактивирована — доступ закрыт полностью, какие бы права ни были выданы. Администратор действует только там, где право выдавать доступ есть у него самого.