Ролевая архитектура определяет не только доступ к данным, но и видимую картину продукта. Пользователь должен видеть доступные объекты и действия без ложных обещаний, а проверка прав обязана оставаться на серверной стороне. основание Для темы «информационная архитектура для ролей и прав доступа» артефакт «матрица ролей и видимости» связывает компонент «Роль» с этапом «Собрать реальные обязанности»; неподтверждённые рекомендации остаются редакционными гипотезами темы «информационная архитектура для ролей и прав доступа».
Задача и проверяемые основания
W3C подчёркивает роль навигации как точки ориентации, поэтому скрытие или перестройка разделов напрямую меняет понимание продукта. основание
Руководство W3C по структуре страниц рекомендует явно обозначать регионы и отношения разделов. основание
GOV.UK включает структурирование сервиса и использование паттернов в проектирование пользовательского опыта. основание
USWDS описывает компоненты с единым назначением и ожидаемым поведением, что помогает последовательно применять различия ролей. основание
В артефакте «матрица ролей и видимости» вопрос «Роль описывает обязанность или конкретного человека?» хранится отдельно от решения «Определить области» и ограничения «сложные матрицы трудно объяснять».
Рабочая модель
Роль. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает устойчивый набор обязанностей, а не персональное исключение. В артефакте «матрица ролей и видимости» связь с компонентом «Область действия» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Область действия. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает организация, проект, объект или другая граница назначения. В артефакте «матрица ролей и видимости» связь с компонентом «Видимость» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Видимость. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает правило показа разделов, объектов и признаков закрытого содержимого. В артефакте «матрица ролей и видимости» связь с компонентом «Разрешение» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Разрешение. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает конкретное действие над объектом, проверяемое независимо от кнопки. В артефакте «матрица ролей и видимости» связь с компонентом «Наследование» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Наследование. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает передача прав от контейнера к дочерним объектам с исключениями. В артефакте «матрица ролей и видимости» связь с компонентом «Объяснение отказа» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Объяснение отказа. В теме «информационная архитектура для ролей и прав доступа» этот элемент означает сообщение, различающее отсутствие права, закрытый объект и временную ошибку. В артефакте «матрица ролей и видимости» связь с компонентом «Роль» проверяют сценарием темы «информационная архитектура для ролей и прав доступа».
Порядок проектирования
1. Собрать реальные обязанности. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: описать, что роли должны делать, а не копировать группы пользователей. Результат уточняет компонент «Роль», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
2. Определить области. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: развести глобальные, проектные и объектные назначения. Результат уточняет компонент «Область действия», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
3. Построить матрицу. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: сопоставить объект, действие, состояние и минимальное разрешение. Результат уточняет компонент «Видимость», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
4. Спроектировать видимость. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: решить, когда скрывать пункт или предлагать запрос доступа. Результат уточняет компонент «Разрешение», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
5. Проверить обходные пути. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: пройти прямые ссылки, поиск, уведомления, экспорт и API. Результат уточняет компонент «Наследование», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
6. Ввести аудит изменений. Команда применяет шаг к теме «информационная архитектура для ролей и прав доступа»: фиксировать назначение прав, источник изменения и отзыв. Результат уточняет компонент «Объяснение отказа», а спорные варианты темы «информационная архитектура для ролей и прав доступа» остаются в артефакте «матрица ролей и видимости».
Практический пример
Редакционный пример: в проектной системе внешний подрядчик видел пункт «Финансы», но после перехода получал общий запрет. Команда выделила область проекта и разрешения на сметы, счета и платежи. Раздел скрывался, если в нём не было ни одного доступного объекта; при частичном доступе показывались только разрешённые элементы. Прямая ссылка проверялась сервером, а сообщение предлагало запросить доступ у владельца проекта без раскрытия суммы или названия закрытого документа.
Пример показывает, как «матрица ролей и видимости» помогает раньше обнаружить ошибку «использовать скрытую кнопку как защиту» и проверить критерий «права проверяются на сервере» для темы «информационная архитектура для ролей и прав доступа».
Контрольные вопросы
- Роль описывает обязанность или конкретного человека? Ответ фиксируют в артефакте «матрица ролей и видимости» и связывают с компонентом «Роль»; мнение отмечают как допущение темы «информационная архитектура для ролей и прав доступа».
- Где заканчивается область назначения? Ответ фиксируют в артефакте «матрица ролей и видимости» и связывают с компонентом «Область действия»; мнение отмечают как допущение темы «информационная архитектура для ролей и прав доступа».
- Раскрывает ли интерфейс существование закрытого объекта? Ответ фиксируют в артефакте «матрица ролей и видимости» и связывают с компонентом «Видимость»; мнение отмечают как допущение темы «информационная архитектура для ролей и прав доступа».
- Совпадают ли правила меню, поиска и прямой ссылки? Ответ фиксируют в артефакте «матрица ролей и видимости» и связывают с компонентом «Разрешение»; мнение отмечают как допущение темы «информационная архитектура для ролей и прав доступа».
Типовые ошибки
- Использовать скрытую кнопку как защиту. В артефакте «матрица ролей и видимости» для темы «информационная архитектура для ролей и прав доступа» ошибка искажает компонент «Область действия»; рядом записывают последствие, обнаружение и исправление.
- Создавать множество персональных ролей. В артефакте «матрица ролей и видимости» для темы «информационная архитектура для ролей и прав доступа» ошибка искажает компонент «Видимость»; рядом записывают последствие, обнаружение и исправление.
- Смешивать глобальные и проектные права. В артефакте «матрица ролей и видимости» для темы «информационная архитектура для ролей и прав доступа» ошибка искажает компонент «Разрешение»; рядом записывают последствие, обнаружение и исправление.
- Показывать одинаковый отказ для всех причин. В артефакте «матрица ролей и видимости» для темы «информационная архитектура для ролей и прав доступа» ошибка искажает компонент «Наследование»; рядом записывают последствие, обнаружение и исправление.
- Забывать экспорт и уведомления. В артефакте «матрица ролей и видимости» для темы «информационная архитектура для ролей и прав доступа» ошибка искажает компонент «Объяснение отказа»; рядом записывают последствие, обнаружение и исправление.
Критерии качества
- Права проверяются на сервере. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Собрать реальные обязанности»; рядом сохраняют результат и ответственного.
- Области определены явно. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Определить области»; рядом сохраняют результат и ответственного.
- Видимость не раскрывает лишние данные. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Построить матрицу»; рядом сохраняют результат и ответственного.
- Прямые ссылки безопасны. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Спроектировать видимость»; рядом сохраняют результат и ответственного.
- Запрос доступа имеет владельца. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Проверить обходные пути»; рядом сохраняют результат и ответственного.
- Изменения разрешений журналируются. В артефакте «матрица ролей и видимости» критерий темы «информационная архитектура для ролей и прав доступа» проверяют после шага «Ввести аудит изменений»; рядом сохраняют результат и ответственного.
Ограничения применимости
- Сложные матрицы трудно объяснять. Ограничение сужает вывод по теме «информационная архитектура для ролей и прав доступа» и требует повторно задать вопрос «Роль описывает обязанность или конкретного человека?»; границу решения сохраняют в артефакте «матрица ролей и видимости».
- Юридические требования могут требовать дополнительной изоляции. Ограничение сужает вывод по теме «информационная архитектура для ролей и прав доступа» и требует повторно задать вопрос «Где заканчивается область назначения?»; границу решения сохраняют в артефакте «матрица ролей и видимости».
- Временные замещения нуждаются в сроке. Ограничение сужает вывод по теме «информационная архитектура для ролей и прав доступа» и требует повторно задать вопрос «Раскрывает ли интерфейс существование закрытого объекта?»; границу решения сохраняют в артефакте «матрица ролей и видимости».
- Скрытие функций осложняет обучение. Ограничение сужает вывод по теме «информационная архитектура для ролей и прав доступа» и требует повторно задать вопрос «Совпадают ли правила меню, поиска и прямой ссылки?»; границу решения сохраняют в артефакте «матрица ролей и видимости».
- Единая роль редко покрывает все организации. Ограничение сужает вывод по теме «информационная архитектура для ролей и прав доступа» и требует повторно задать вопрос «Роль описывает обязанность или конкретного человека?»; границу решения сохраняют в артефакте «матрица ролей и видимости».
Вывод
Для темы «информационная архитектура для ролей и прав доступа» команда связывает компонент «Роль» с этапом «Собрать реальные обязанности», проверяет критерий «права проверяются на сервере» и учитывает ограничение «сложные матрицы трудно объяснять». Артефакт «матрица ролей и видимости» сохраняет основания выбора и позволяет пересмотреть решение после новых наблюдений.