Just commented out the require once for Simple Security, and added Access-Control
require_once("{IP}/extensions/Acess/Control/AccessControl.php");
$wgAdminCanReadAll = true;
$wgAccessControlRedirect = true;
I have the groups still in place from the SimpleSecurity extension ie;
# create user groups
$wgSecurityExtraGroups = array('TEAMSecure');
#prevent includes for pages that need extra security.
$wgNonincludableNamespaces = array('Example_page');
#Groups for secure pages
$wgGroupPermissions['all']['read'] = false;
$wgGroupPermissions['TEAMSecure']['read'] = true;
$wgGroupPermissions['TEAMSecure']['writeapi'] = true;
$wgGroupPermissions['TEAMSecure']['edit'] = true;
$wgGroupPermissions['TEAMSecure']['editinterface'] = true;
$wgGroupPermissions['TEAMSecure']['read'] = true;
So have used them accordingly;
Now on pages to be protected instead of adding [[Category:TEAMSecure]]
to secure the pae from all but the TEAMSecure group I used;
<accesscontrol>Administrators,TEAMSecure</accesscontrol>
The page is protected from view or edit, the user is redirected to a page called Deny User for authenticated users without access to that page.
and Deny anonymous for unauthenticated users.
Those pages can be edited by those users but all they change is the message they see when they try to get to the protected page since its redirected, I watch those pages for changes accordingly.
I did not keep the secure categories secition as this extension works atthe page/subpage level.
you may want to Disable some special pages to hide them or a subset of them accordingly. to prevent unauthorized users from using those tools to work around the extension.
Use the disablespecialpages extension .Extension:DisableSpecialPages
to disable all but login create user and search or look into this function that can disable any special pages including search
function disableSomeSpecialPages(&$list) {
global $wgUser;
#If not sysop disable other pages
if (!in_array("sysop", $wgUser->getEffectiveGroups())) {
unset($list['Version']);
unset($list['Contributions']);
unset($list['Allpages']);
unset($list['Lonelypages']);
unset($list['Longpages']);
unset($list['Uncategorizedcategories']);
unset($list['Categories']);
unset($list['CreateCategory']);
unset($list['CreateForm']);
unset($list['CreateTemplate']);
unset($list['Search']);
}
return true;
}
$wgHooks['SpecialPage_initList'][] = 'disableSomeSpecialPages';
This is working well on mw 1.32 for me.