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

Небольшая заметка о том как авторизировать определенных пользователей в контексте mgr без ввода логина и пароля. Используется
  • MODX Revo [2.2.10-pl]
  • HybridAuth [0.8.5-pl]
Для начала необходимо настроить контроль доступа и групп ресурсов. Идем в Безопасность -> Группы ресурсов И создаем новую группу ресурсов (например Authorized): Далее идем в Безопасность -> Контроль доступа И создаем новую группу пользователей (например User): Далее необходимо отредактировать нашу новую группу. Переходим на вкладку Доступ к Группам ресурсов и нажимаем Добавить группу ресурсов И заполняем следующими параметрами: - Группа ресурсов - 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 Делал для себя и так как информации на эту тему мало, а где то сохранить хочется предложу сюда может кому пригодится.

Комментарии

bezumkin.ru
Personal website of Vasily Naumkin
Прямой эфир
Александр Наумов
23.07.2024, 00:20:37
Василий, спасибо большое!!
Василий Наумкин
01.07.2024, 11:56:41
Да, верно, именно так. А в контроллере, скорее всего, ловить данные методом post.
Василий Наумкин
26.06.2024, 09:38:15
О, точно, вылезает если не залогинен. Спасибо, исправил!
Василий Наумкин
09.04.2024, 04:45:01
> Ошибка 500 Это не похоже на ошибку Nginx, это скорее всего ошибка PHP - надо смотреть его логи. ...
Василий Наумкин
20.03.2024, 21:21:52
Volledig!
Андрей
14.03.2024, 13:47:10
Василий! Как всегда очень круто! Моё почтение!
russel gal
09.03.2024, 20:17:18
> А этот стоило написать хотя бы затем, чтобы получить комментарий от юзера, который ничего не писал...
Александр Наумов
27.01.2024, 03:06:18
Василий, спасибо! Извини, тупанул.
Василий Наумкин
22.01.2024, 07:43:20
Давай-давай!
Василий Наумкин
24.12.2023, 14:26:13
Спасибо!