r6 - 19 Jul 2005 - 01:21:35 - WillNorrisYou are here: TWiki >  Plugins Web > SecurityPlugin
Tags:
access_control 1 Add my vote for this tag, security 3 Add my vote for this tag, , create new tag

Security Plugin

The SecurityPlugin implements a TWikiVariable which will show whether the page being viewed needs authentication or not. Authorization is another issue. Hopefully this is easier and more intuitive than telling users to check whether the current URL has view or viewauth in it.

The Plugin is quite simple, it uses TWiki::Func::isGuest to check if the page is authenticated or not. This relies on the fact that URL linking to other topics use the view CGI and authenticated pages are referred from the view CGI to the viewauth CGI (if installed). Of course one could make a page appear authenticated by adding auth to the URL (or linking to a URL with viewauth) but this won't happen on the next page if the user acts normally and clicks on the links.


Syntax Rules

  • Place a %SECURITY% variable in any page (Or WebLeftBar or WebTopBar), it will return the contents of %SECURITYLOCKED% or %SECURITYUNLOCKED% depending on whether the page being viewed is authenticated or not.

Examples

You type Simulated locked Simulated unlocked If installed
%SECURITY% viewable by authenticated user only according to authorization viewable publicly %SECURITY%

Plugin Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %<plugin>_<setting>%, i.e. %INTERWIKIPLUGIN_SHORTDESCRIPTION%

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Shows if authentication required to view a page or not

  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0

  • My own settings:
    • Set SECURITYLOCKED = viewable by authenticated user only according to authorization
    • Set SECURITYUNLOCKED = viewable publicly

Plugin Installation Instructions

Note: You do not need to install anything on the browser to use this plugin. The following instructions are for the administrator who installs the plugin on the server where TWiki is running.

  • Download the ZIP file from the Plugin web (see below)
  • Unzip SecurityPlugin.zip in your twiki installation directory. Content:
    File: Description:
    data/TWiki/SecurityPlugin.txt Plugin topic
    data/TWiki/SecurityPlugin.txt,v Plugin topic repository
    lib/TWiki/Plugins/SecurityPlugin.pm Plugin Perl module
    pub/TWiki/SecurityPlugin/unlocked.gif Unlocked lock image

  • Test if the installation was successful:
    • %SECURITY% <- there should be a little picture of a lock (locked or unlocked)
    • this of course depends on your settings for SECURITYLOCKED and SECURITYUNLOCKED and the rights required to read this page
    • See also the Examples section above

  • Customize the Variables if desired

Plugin Info

Plugin Author: TWiki:Main.MichaelGindonis
Plugin Version: 13 Jul 2005 (V1.000)
Change History:  
13 Jul 2005: Initial version
TWiki Dependency: $TWiki::Plugins::VERSION 1.022
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.005
License: GPL (GNU General Public License)
TWiki:Plugins/Benchmark: GoodStyle 100%, FormattedSearch 100%, SecurityPlugin 100%
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/SecurityPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/SecurityPluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/SecurityPluginAppraisal

Related Topics: TWikiPreferences, TWikiPlugins, TWikiUserAuthentication

-- MichaelGindonis - 13 Jul 2005

Topic attachments
I Attachment Action Size Date Who Comment
zipzip SecurityPlugin.zip manage 6.8 K 13 Jul 2005 - 16:04 MichaelGindonis Security Plugin zip file
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r6 < r5 < r4 < r3 < r2 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback SourceForge.net Logo