Joomla 3.0 контрол на достъпа до компонентите на сайта

Въпрос за сигурността на Joomla 3 компонент (съжалявам, noob). Имам компонент, който бих искал частите за сайта и администратора да имат различни настройки за достъп. Примерът с Joomla изглежда се фокусира върху сигурността на администратора, по-специално admin\access.xml.

Мога ли да задам достъп на ниво група от страна на "сайт" на моя компонент? ако да как?

Благодаря, това е най-добрият документ, който открих, но не вярвам, че отговаря на въпроса ми.

https://docs.joomla.org/J3.x:Developing_a_MVC_Component/Adding_ACL#Restricting_access_to_the_component


person BigSkyRunningCoder    schedule 17.03.2015    source източник


Отговори (1)


Имате правилния документ, ако той вече работи правилно в задната част, можете да го използвате и в предната част. Както е описано в урока, трябва да добавите:

// Access check: is this user allowed to access the backend of this component?
if (!JFactory::getUser()->authorise('core.manage', 'com_yourcomponent')){
   //pop the error below:
   return JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
}else{
   // [...] Stuff for restricted access here 
}

На мястото на core.manage можете да поставите каквото и да е acl изискване, което трябва да проверите. Например core.edit, core.manage, core.yourown и т.н. Тези условия за контрол на достъпа съществуват едновременно във файла admin/access.xml, няма нужда да създавате отделен файл за интерфейса.

person ilias    schedule 17.03.2015
comment
Благодаря. Това, което не разбрах, беше, че не задавах разрешения, ние задаваме действия. И след това конфигурирате вашия компонент да присвоява действие на групи. Накрая потребителите са в групи. Ключът беше добавянето на „com_yourcomponent“. Благодаря отново. - person BigSkyRunningCoder; 17.03.2015