Предоставление прав новому пользователю

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

  • предоставить доступ по UI («Доступ ко всему приложению»);

  • предоставить доступ по API к cервису «Конструктор микрофронтов» (cервису Фасада) по всем эндпоинтам и по всем методам;

  • предоставить доступ по DATA (достаточно дефолтной политики на чтение).

1. Перейти в раздел «Безопасность» – «Права доступа» – «Роли».

img

2. В списке ролей найти и открыть карточку роли, созданной в разделе Создание новой роли в Платформе.

img

3. В блоке «Разрешения» нажать кнопку img – откроется окно «Добавить разрешение».

img

4. В выпадающем списке выбрать созданный в разделе Создание динамического приложения сервис (динамическое приложение) и нажать кнопку «Выбрать» – станет доступен список всех разрешений по выбранному сервису.

img

5. Отметить чекбоксом разрешение «Доступ» («Доступ ко всему приложению») и нажать кнопку «Выбрать» – новому пользователю будет предоставлен доступ по UI к созданному динамическому приложению.

img

6. Перейти в раздел «Безопасность» – «Права доступа» – «Модели».

7. Перейти в модель «default model for API» – откроется карточка политики по слою API по умолчанию.

8. В блоке «Зависимые политики Casbin» нажать кнопку img – откроется форма создания зависимой политики Casbin.

9. В поле «Сервис» выбрать значение «Сервис Фасада».

10. В поле «Тип политики» поставить значение «p» (строчная латинская буква p).

11. В поле «Параметр 1» указать субъект запроса на доступ (роль, созданную в разделе Создание новой роли в Платформе).

12. В поле «Параметр 2» (Path) указать значение Ant-item эндпоинта – «/*», которое означает, что политика доступа будет обращаться ко всем запросам.

13. В поле «Параметр 3» (HTTP-метод) указать значение «.*», которое означает, что политика доступа будет обращаться ко всем методам.

14. В поле «Параметр 4» указать значение «allow», которое означает, что обращение политики доступа к вышеуказанным параметрам разрешено.

img

15. Нажать кнопку «Создать» – доступ по API к cервису «Конструктор микрофронтов» (dh-facade-service) по всем эндпоинтам и по всем методам будет предоставлен.

img

Примечание – Также можно создать политику копированием уже имеющейся политики по слою API, нажав кнопку img, выбрав в поле «Сервис» значение «Сервис Фасада» и нажав кнопку «Создать».

16. Перейти в раздел «Безопасность» – «Права доступа» – «Модели».

17. Перейти в модель «default model for DATA» – откроется карточка политики по слою DATA по умолчанию.

18. В блоке «Зависимые политики Casbin» нажать кнопку img – откроется форма создания зависимой политики Casbin.

19. В поле «Сервис» выбрать значение «Сервис Фасада».

20. В поле «Тип политики» поставить значение «p» (строчная латинская буква p).

21. В поле «Параметр 1» указать субъект запроса на доступ (роль, созданную в разделе Создание новой роли в Платформе).

22. В поле «Параметр 2» указать наименование объекта, для которого будет выполняться политика – «r.obj.name != ""» – политика будет выполняться для любого объекта.

23. В поле «Параметр 3» указать значение «read», которое означает, что политика доступа будет обращаться к методу READ.

24. В поле «Параметр 4» указать значение «allow», которое означает, что обращение политики доступа к вышеуказанным параметрам разрешено.

img

25. Нажать кнопку «Создать» – политика доступа к cервису «Конструктор микрофронтов» (dh-facade-service) по слою DATA будет создана.

img

Примечание – Также можно создать политику копированием уже имеющейся политики по слою DATA, нажав кнопку img, выбрав в поле «Сервис» значение «Сервис Фасада» и нажав кнопку «Создать».

26. Проверить, что новому пользователю предоставлен доступ к созданному динамическому приложению. Для этого выполнить следующие действия:

​ 26.1. Сбросить кэш.

​ 26.2. Выйти из текущего аккаунта администратора, нажав на иконку пользователя, расположенную в правом верхнем углу рабочего окна, и в выпадающем меню выбрать действие «Выйти» img – откроется страница авторизации в Платформе.

​ 26.3. Авторизоваться в Платформе под новым пользователем. Для этого в поле «Username or email» ввести логин пользователя, созданного в разделе Создание новой роли в Keycloak, в поле «Password» ввести пароль и нажать кнопку «Sign In».

​ 26.4. Убедиться, что в основном меню появился раздел «Прикладные решения» и в нем содержится динамическое приложение, созданное в разделе Создание динамического приложения.

img

​ 26.5. Убедиться, что в созданном динамическом приложении отображается содержимое.

img

​ 26.6. Выйти из текущего аккаунта пользователя с новой ролью.

​ 26.7. Вновь авторизоваться в Платформе под пользователем с правами системного администратора для выполнения дальнейших настроек.