2012-10-17 4 views
3

Joomla 2.5 백엔드 사용자를 특정 기능 /보기로 제한하는 방법을 식별하는 데 문제가있는 것 같습니다. 내 이해에 따르면 나는 내 view를 access.xml 파일의 한 섹션으로 추가 할 수 있어야한다. 내보기와 같은 이름의 섹션을 지정하여 시도했지만 구성 요소 전체와는 별도로 해당보기에 대한 액세스를 변경할 수있는 것 같지 않습니다. 누구나 내가 검토하거나 조언 할 수있는 더 깊이있는 예제를 가지고 있습니까? 이것은 가능한가?Joomla 2.5 ACL이 특정 기능 /보기로 제한

답변

1

나는 당신이하려고하는 것이 Joomla가 지원하지 않는다고 믿습니다. 나의 제안은 당신의 JSON 인코딩 된 목록을 저장해야 rules 필드에 com_component.view.playerlist, 같은 이름으로 #__assets 표에서보기를

<section name="component"> 
    <action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" /> 
    <action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" /> 
    <action name="core.create" title="JACTION_CREATE" description="JACTION_CREATE_COMPONENT_DESC" /> 
    <action name="core.delete" title="JACTION_DELETE" description="JACTION_DELETE_COMPONENT_DESC" /> 
    <action name="core.edit" title="JACTION_EDIT" description="JACTION_EDIT_COMPONENT_DESC" /> 
    <action name="core.edit.state" title="JACTION_EDITSTATE" description="COM_CATEGORIES_ACCESS_EDITSTATE_DESC" /> 
</section> 

<section name="views"> 
    <action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" /> 
</section> 

다음 access.xml의 전망에 대한 사용자 지정 규칙을 추가 저장하는 것입니다 규칙 :

{"core.admin":{}} 

현재 사용자 또는 JAccess

$user_id=JFactory::getUser()->id; 
$has_permission = JAccess::check($user_id,'core.admin','com_component.view.playerlist'); 
if($has_permission){ 
    draw_view(); 
}else{ 
    JError::riseError(403,JText::_('PERMISSION_DENIED')); 
    // or 
    JError::raiseWarning(403,JText::_('PERMISSION_DENIED')); 
} 
을 사용하여 확정 섹션에 액세스 할 수 있습니다 경우 확인할 수 있습니다

의심되는 점이 있으면 언제든지 말씀해주십시오.

+0

나는 의심이있다! 'accessname' 파일과'JAccess :: check'에서'

'태그 사이의 관계는 무엇입니까? – pedromanoel

+0

섹션의 이름이 "보기"대신 "보기"가되어서는 안됩니까? 내 확장 기능에 ACL을 추가하는 방법에 대해서도 공부하고 있지만 joomla가 구성을 어떻게 사용하는지 잘 모르겠습니다. – pedromanoel

관련 문제