HybridAuth Авторизация в контексте mgr

Небольшая заметка о том как авторизировать определенных пользователей в контексте mgr без ввода логина и пароля. Используется

  • MODX Revo [2.2.10-pl]
  • HybridAuth [0.8.5-pl]
Для начала необходимо настроить контроль доступа и групп ресурсов. Идем в **Безопасность** -> **Группы ресурсов** И создаем новую группу ресурсов (например Authorized): [![](https://bezumkin.ru/api/image/f52ea94f-6a2c-5ff6-8796-fe78c9048cb4)](https://bezumkin.ru/api/image/fd5fe3e2-6517-5402-8ca1-5064e0f1469c)[![](https://bezumkin.ru/api/image/56fba91f-4eee-5b2b-a0df-16e70cc2e438)](https://bezumkin.ru/api/image/8c4ebc55-4db8-56f3-8d21-215125ef0e33)Далее идем в **Безопасность** -> **Контроль доступа** И создаем новую группу пользователей (например User): [![](https://bezumkin.ru/api/image/16a988e5-48f8-519a-966c-a01c3c26d595)](https://bezumkin.ru/api/image/886b8c51-1a5b-56bc-916c-e1b8ef0448af)[![](https://bezumkin.ru/api/image/4afb85fd-2141-58a8-ae79-1ba960e7de56)](https://bezumkin.ru/api/image/6290f80d-6d21-5b09-b477-d31529a3a4aa)Далее необходимо отредактировать нашу новую группу. [![](https://bezumkin.ru/api/image/2a481024-dcc2-583f-b5c4-c4d86c6d7f4f)](https://bezumkin.ru/api/image/ea4c4661-f396-5e56-8cc5-d32beae90700)Переходим на вкладку **Доступ к Группам ресурсов** и нажимаем **Добавить группу ресурсов** И заполняем следующими параметрами: - Группа ресурсов - Authorized
  • Контекст - web
  • Минимальная роль - Member - 9999
  • Политика доступа - Load, List and View

*Перезагружаем права доступа.

Далее идем в настройки HybridAuth И настраиваем хотя бы одного провайдера. Способы настройки провайдеров вы можете найти тут и немного тут

Далее идет вызов на вашей странице сниппета HybridAuth

 [[!HybridAuth? &groups=`User:1` &addContexts=`web,mgr`]] 

Логика следующая: Каждый пользователь (любой) авторизируясь в этой форме попадает в группу User C Ролью = 1 то есть Member - 9999 Далее необходимо нового пользователя который зарегистрировался у вас на сайте через HybridAuth например (New_user_from_HybridAuth) добавить в группу имеющую доступ к контексту mgr например Administrator. После этого пользователь New_user_from_HybridAuth Будет авторизироваться в контексте web и mgr (manager) через HybridAuth, так как он находится в группе пользователей Administrator, которая имеет доступ к контексту mgr. Все остальные попадают в группу User которая имеет доступ только к контексту web и группе ресурсов Authorized.

Группы ресурсов позволяют закрыть какой либо документ от пользователя не обладающего необходимыми правами. Например если при подобных настройках создать ресурс и указать у него в группах ресурсов галочку на против Authorized то этот ресурс смогут увидеть только авторизированные пользователи в группе User.

P.S Делал для себя и так как информации на эту тему мало, а где то сохранить хочется предложу сюда может кому пригодится.

← Предыдущая заметка
Выбор первых картинок из контента
Следующая заметка →
Очистка старых сессий в MODX
Комментарии (0)
bezumkin
Василий Наумкин
13.08.2022 11:41
неужели, все глобальное, так просто можно взять и сделать Да, именно так. Мелкие затыки, конечно ж...
bezumkin
Василий Наумкин
13.08.2022 08:18
Killed говорит, что сервер прибивает задачу, скорее всего у провайдера есть какие-то лимиты по нагру...
bezumkin
Василий Наумкин
11.08.2022 15:46
Класс!! Рад, что тебе нравится! нужно добавить @click="showCart = true" в: Спасибо, попра...
bezumkin
Василий Наумкин
09.08.2022 11:27
На здоровье!
inetlover
Александр Наумов
30.07.2022 19:58
Василий, спасибо большое! Первый вариант помог, не было вот этой настройки: php_value[sys_temp_dir].
bezumkin
Василий Наумкин
12.07.2022 20:40
Всё как обычно, в самом начале файла конфига import axios from 'axios'
bezumkin
Василий Наумкин
06.07.2022 14:06
Базовый Vue, базовый ES 6: импорт-экспорт модулей, вот это всё. Если что-то будет непонятно - просто...
bezumkin
Василий Наумкин
06.07.2022 11:19
Спасибо, что читаешь!
bezumkin
Василий Наумкин
05.07.2022 11:40
На здоровье!
inetlover
Александр Наумов
03.07.2022 23:36
Василий, спасибо! Все понятно!