Main web, like the TWikiAdminGroup. To start a new group:
SomeGroup
    Set GROUP = Main.SomeUser, Main.OtherUser, Main.SomeOtherGroup
    Set ALLOWTOPICCHANGE = Main.TWikiAdminGroup     * Set DENYTOPICCHANGE = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
    * Set ALLOWTOPICCHANGE = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
    * Set DENYTOPICRENAME = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
    * Set ALLOWTOPICRENAME = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
 If keeping a hidden web out of general use is a consideration, you can prevent the
 If keeping a hidden web out of general use is a consideration, you can prevent the all webs search option from accessing hidden webs, by enabling the NOSEARCHALL variable in WebPreferences:
 This method only works if the
This method only works if the view script is authenticated, which means that all users have to login, even for read-only access. (An open guest account, like TWikiGuest, can get around this, allowing anyone to login to a common account with, for example, view-only access for public webs.) TWikiInstallationGuide has more on Basic Authentication, using the .htaccess file.
 Hiding webs is not very secure, as there is a way to circumvent the read access restriction. It can be useful in certain situations - for example, to simplify site organization and clutter, by hiding low traffic webs - but is not recommended for securing sensitive content. (See the next section for a more secure approach.)
 Hiding webs is not very secure, as there is a way to circumvent the read access restriction. It can be useful in certain situations - for example, to simplify site organization and clutter, by hiding low traffic webs - but is not recommended for securing sensitive content. (See the next section for a more secure approach.)
 THIS SECTION CONTAINS WORKAROUNDS. Perhaps unconventional for official documentation, but practical, the following method for extending TWiki functionality involves modifying core TWiki, making it essentially not a feature but a hack. Still, it is officially TWiki developer-approved and documented, and will no doubt be included in some form in an upcoming edition of TWiki. 
To selectively restrict web access with the security of Basic Authentication, there is a reliable workaround that involves some straightforward code modification:
 THIS SECTION CONTAINS WORKAROUNDS. Perhaps unconventional for official documentation, but practical, the following method for extending TWiki functionality involves modifying core TWiki, making it essentially not a feature but a hack. Still, it is officially TWiki developer-approved and documented, and will no doubt be included in some form in an upcoming edition of TWiki. 
To selectively restrict web access with the security of Basic Authentication, there is a reliable workaround that involves some straightforward code modification:
view script (rename) and create a view subdirectory in its place.
view subdirectory, create a separate copy of a modified viewing script for each web, and create .htaccess settings for the restricted webs.
 You can use symbolic links to a single copy of the viewing script to make any script updates that much easier.
 You can use symbolic links to a single copy of the viewing script to make any script updates that much easier.
Example of viewing scriptredirect#!/usr/bin/perl -w # chdir '..'; # Adjust SCRIPT and PATH_INFO variables to account for the changed directory my $web = $ENV{SCRIPT_NAME}; $web =~ s#^.*/view(/[^/]*).*$#$1#; # isolate the path element after "view" $ENV{PATH_TRANSLATED} =~ s#(/[^/]*)$#$web$1#; $ENV{PATH_INFO} =~ s#(/[^/]*)$#$web$1#; $ENV{SCRIPT_NAME} =~ s#/view$web#/view#; $ENV{SCRIPT_FILENAME} =~ s#/view$web#/view#; # open (LOG, '>>/tmp/redirect.log'); # print LOG join ("\n", scalar localtime (time ()), %ENV); # close LOG; exec ('/usr/bin/perl', '-wT', 'view.orig') or print <<EOF; Content-type: text/plain Error executing /cgi-bin/view.orig: $? Click the BACK button in your browser and contact webmaster\@bcs-oops.org. EOF
view script from the .htaccess file.
$doRememberRemoteUser flag in lib/TWiki.cfg as described in TWikiUserAuthentication. TWiki will now remember the IP address of an authenticated user. 
view script to viewauth (or better, create a symbolic link) 
viewauth to the list of authenticated scripts in the .htaccess file.
view script to the viewauth script once (this happens only if the user has never edited a topic). Doing so will ask for authentication. The viewauth script shows the requested topic if the user could log on and if the user is authorized to see that web.
NOSEARCHALL variable in its WebPreferences, like:
 To hide access control settings from normal browser viewing, place them in comment markers.
 To hide access control settings from normal browser viewing, place them in comment markers. 
<!--
Set DENYTOPICCHANGE = Main.SomeGroup
-->
$superAdminGroup variable in lib/TWiki.cfg to the name of a group of users who are always allowed to edit/view topics.
$superAdminGroup = "TWikiAdminGroup";
| Topic TWikiAccessControl . { | 
| Revision r1.22 - 02 Apr 2002 - 00:04 GMT - MikeMannix | Copyright © 1999-2003 by the contributing authors. 
All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding TWiki? Send feedback. |