Merge remote branch 'smcv/ready/transient-recentchanges'
[ikiwiki] / doc / plugins / httpauth.mdwn
1 [[!template id=plugin name=httpauth author="Alec Berryman"]]
2 [[!tag type/auth]]
3
4 This plugin allows HTTP basic authentication to be used to log into the
5 wiki. 
6
7 ## fully authenticated wiki
8
9 One way to use the plugin is to configure your web server to require
10 HTTP basic authentication for any access to the directory containing the
11 wiki (and `ikiwiki.cgi`). The authenticated user will be automatically
12 signed into the wiki. This method is suitable only for private wikis.
13
14 ## separate cgiauthurl
15
16 To use httpauth for a wiki where the content is public, and where
17 the `ikiwiki.cgi` needs to be usable without authentication (for searching,
18 or logging in using other methods, and so on), you can configure a separate
19 url that is used for authentication, via the `cgiauthurl` option in the setup
20 file. This url will then be redirected to when a user chooses to log in using
21 httpauth.
22
23 A typical setup is to make an `auth` subdirectory, and symlink `ikiwiki.cgi` 
24 into it. Then configure the web server to require authentication only for
25 access to the `auth` subdirectory. Then `cgiauthurl` is pointed at this
26 symlink.
27
28 ## using only httpauth for some pages
29
30 If you want to only use httpauth for editing some pages, while allowing
31 other authentication methods to be used for other pages, you can
32 configure `httpauth_pagespec` in the setup file. This makes Edit
33 links on pages that match the [[ikiwiki/PageSpec]] automatically use
34 the `cgiauthurl`, and prevents matching pages from being edited by
35 users authentication via other methods.