Si un administrateur peut installer des extensions, il est lui est très facile de réaliser/installer une extension de quelques lignes de code le propulsant au rang de super-administrateur.
Modifications
Permissions
Oter les permissions est une chose relativement facile. Dans le fichier /includes/gacl.class.php, commentez les lignes suivantes :
1. Installation de modules, ligne 137 :
Code: Select all
$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'modules', 'all' );
Code: Select all
$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'mambots', 'all' );
Code: Select all
$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'components', 'all' );
Cependant, un bug dans Joomla! (voir ce tracker) impose la modification d'un autre fichier. Dans le fichier /administrator/modules/mod_fullmenu.php, remplacez la ligne 166 :
Code: Select all
if ($installComponents) {
Code: Select all
if ($installComponents | $editAllComponents) {
Code: Select all
<?php
// Modules Sub-Menu
if ($installModules | $editAllModules) {
?> _cmSplit,
[null,'Modules',null,null,'Gestion des modules',
<?php
if ($editAllModules) {
?> ['<img src="../includes/js/ThemeOffice/module.png" />', 'Modules du Site', "index2.php?option=com_modules", null, 'Gérer les modules du site'],
['<img src="../includes/js/ThemeOffice/module.png" />', 'Modules Administrateur', "index2.php?option=com_modules&client=admin", null, 'Gérer les modules Administrateur'],
<?php
}
?> ],
<?php
} // if ($installModules | $editAllModules)
} // if $installComponents
Code: Select all
<?php
} // if ($installComponents | $editAllComponents)
// Modules Sub-Menu
if ($installModules | $editAllModules) {
?> _cmSplit,
[null,'Modules',null,null,'Gestion des modules',
<?php
if ($editAllModules) {
?> ['<img src="../includes/js/ThemeOffice/module.png" />', 'Modules du Site', "index2.php?option=com_modules", null, 'Gérer les modules du site'],
['<img src="../includes/js/ThemeOffice/module.png" />', 'Modules Administrateur', "index2.php?option=com_modules&client=admin", null, 'Gérer les modules Administrateur'],
<?php
}
?> ],
<?php
} // if ($installModules | $editAllModules)
Effectué sur la version 1.0.13 de Joomla!