Новости Joomla

Вышли релизы безопасности Joomla 5.3.4 и Joomla 4.4.14

Релиз безопасности Joomla 5.3.4

Проект Joomla спешит сообщить о выпуске Joomla 5.3.4 и Joomla 4.4.14. Это релиз безопасности для серии Joomla 5.3 и релиз безопасности для серии Joomla 4.4.

Joomla REST API без прав суперадминистратора. RBAC в Joomla

Joomla REST API без прав суперадминистратора. RBAC в Joomla

👩‍💻 Joomla REST API без прав суперадминистратора. RBAC в Joomla.На канале известного французского разработчика и специалиста по Joomla REST API Alexandre ELISÉ вышло новое видео.RBAC (Role-Based Access Control) - это управление доступом на основе ролей, метод управления доступом к ресурсам, основанный на назначении ролей пользователям. Вместо назначения прав каждому пользователю точечно права доступа группируются по ролям, а пользователи получают доступ к ресурсам уже в зависимости от своей роли. В контексте Joomla и REST API он может даже мешать работе: без авторизованного пользователя вы не можете даже показать контент. В видео показано как решить данную проблему. Создаётся "технический пользователь", которому разрешается просматривать контент, но не разрешено создавать, редактировать, удалять и т.д. И все запросы к REST API идут с использованием его токена. [fr-FR] Services Web API Joomla SANS être Super Admin RBAC natif avec Joomla@joomlafeed #joomla #разработка #rest

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 3112 Просмотров
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
Есть в шаблоне item.php определённый код:

Код
<?php echo $this->item->event->K2AfterDisplayContent; ?>

Мне нужно вывести это поле только для пользователей из определённых групп, но групп именно от К2, а не от Джумловских. Как определить id группы текущего юзера и прописать данное условие?

Более конкретно: неавторизованным юзерам и просто зарегистрированным не показываем, а группам юзеров K2 с id(группы)=2,3 и 4 показываем?
« Последнее редактирование: 31.10.2011, 10:54:26 от Dorfman »
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
Должно по идее выглядеть где-то так:

Код
// здесь строка, в которой мы определяем группу юзверя К2 - запрос к БД
бла-бла-бла...

// здесь условие
if (id группы юзеров К2 =2 или id группы юзеров К2 =3 id группы юзеров К2 =4

// здесь действие
echo $this->item->event->K2AfterDisplayContent;

// здесь действие, если не выполняются условия
else бла-бла-бла...

Помогите, пожалуйста, сформулировать это в код ПЫХа!
*

SDKiller

  • Moderator
  • 2705
  • 329 / 5
  • ...ergo sum
Код
$user = &JFactory::getUser(); 
$k2_user = K2HelperPermissions::getK2User($user->id);

if($k2_user->group == ...
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
Спасибо огромное! Ещё одно небольшое уточнение: как правильно прописать условие if

Код
if($k2_user->group == ...

для выбора:

if($k2_user->group == 2 ИЛИ 3 ИЛИ 4
*

SDKiller

  • Moderator
  • 2705
  • 329 / 5
  • ...ergo sum
Через OR или через ||

И то и другое корректно

if ($k2_user->group == 2 OR $k2_user->group == 3 OR ...
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
*

Serena Dark

  • Захожу иногда
  • 99
  • 2 / 0
скажите пожалуйста, а этот код подходит и для Joomla 2.5?
*

Dorfman

  • Завсегдатай
  • 1202
  • 78 / 4
  • Почти влез...
Этот код - для К2, и сама Joomla тут ни при чём. Так что будет работать.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться