summaryrefslogtreecommitdiff
path: root/src/mailman/rest/docs
diff options
context:
space:
mode:
authorBarry Warsaw2010-10-11 15:01:22 -0400
committerBarry Warsaw2010-10-11 15:01:22 -0400
commit9dd13dc84e39702c8abb0a4bf8d513bf3a35ebbd (patch)
tree6a43de65a5d27740fc40c5bfc83b729b3af05934 /src/mailman/rest/docs
parent90814a40b82e559ebfa999df2121ba2e8e32500f (diff)
parent14caf656788903a553c4a374b3f9a934a4014033 (diff)
downloadmailman-9dd13dc84e39702c8abb0a4bf8d513bf3a35ebbd.tar.gz
mailman-9dd13dc84e39702c8abb0a4bf8d513bf3a35ebbd.tar.zst
mailman-9dd13dc84e39702c8abb0a4bf8d513bf3a35ebbd.zip
Add Basic Auth support to the REST API, given by Jimmy Bergman, with style
corrections by Barry.
Diffstat (limited to 'src/mailman/rest/docs')
-rw-r--r--src/mailman/rest/docs/basic.txt28
1 files changed, 25 insertions, 3 deletions
diff --git a/src/mailman/rest/docs/basic.txt b/src/mailman/rest/docs/basic.txt
index e5dab9ea8..177082c4a 100644
--- a/src/mailman/rest/docs/basic.txt
+++ b/src/mailman/rest/docs/basic.txt
@@ -2,12 +2,20 @@
REST server
===========
-Mailman exposes a REST_ HTTP server for administrative control.
+Mailman exposes a REST HTTP server for administrative control.
The server listens for connections on a configurable host name and port.
+
+It is always protected by HTTP basic authentication using a single global
+username and password. The credentials are set in the webservice section
+of the config using the admin_user and admin_pass properties.
+
Because the REST server has full administrative access, it should always be
-run only on localhost, unless you really know what you're doing. The Mailman
-major and minor version numbers are in the URL.
+run only on localhost, unless you really know what you're doing. In addition
+you should set the username and password to secure values and distribute them
+to any REST clients with reasonable precautions.
+
+The Mailman major and minor version numbers are in the URL.
System information can be retrieved from the server. By default JSON is
returned.
@@ -31,4 +39,18 @@ When you try to access a link that doesn't exist, you get the appropriate HTTP
HTTPError: HTTP Error 404: 404 Not Found
+Invalid credentials
+===================
+
+When you try to access the REST server using invalid credentials you will get
+an appropriate HTTP 401 Unauthorized error.
+
+ >>> dump_json('http://localhost:8001/3.0/system',
+ ... username='baduser', password='badpass')
+ Traceback (most recent call last):
+ ...
+ HTTPError: HTTP Error 401: 401 Unauthorized
+ ...
+
+
.. _REST: http://en.wikipedia.org/wiki/REST