@@ -14,7 +14,8 @@ XML-RPC access to Roundup
14
14
:local:
15
15
16
16
Introduction
17
- ------------
17
+ ============
18
+
18
19
Version 1.4 of Roundup includes an XML-RPC frontend for remote access. The
19
20
XML-RPC interface allows a limited subset of commands similar to those found in
20
21
local `roundup-admin` tool.
@@ -27,17 +28,18 @@ For demo tracker the URL would be:
27
28
28
29
http://localhost:8917/demo/xmlrpc
29
30
30
- Enabling XML-RPC server
31
- -----------------------
31
+ Enabling XML-RPC
32
+ ================
32
33
There are two ways to run the XML-RPC interface:
33
34
34
35
through roundup itself
35
36
36
37
stand alone roundup-xmlrpc-server
37
38
38
39
39
- through roundup
40
+ Through Roundup
40
41
---------------
42
+
41
43
The XML-RPC service is available from the roundup HTTP server under
42
44
/xmlrpc.
43
45
@@ -53,9 +55,10 @@ schema.py to add::
53
55
This is usually included near where other permissions like "Web Access"
54
56
or "Email Access" are assigned.
55
57
56
- stand alone roundup-xmlrpc-server
57
- ---------------------------------
58
- Using roundup to access the xmlrpc interface is preferred. Roundup
58
+ Standalone roundup-xmlrpc-server
59
+ --------------------------------
60
+
61
+ Using Roundup to access the xmlrpc interface is preferred. Roundup
59
62
provides better control over who can use the interface.
60
63
61
64
The Roundup XML-RPC standalone server must be started before remote
@@ -69,21 +72,24 @@ must be specified.
69
72
The default port is ``8000``. An alternative port can be specified with the
70
73
``--port`` switch.
71
74
72
- security consideration
73
- ----------------------
75
+ Security Consideration
76
+ ======================
77
+
74
78
Both the standalone and embedded roundup XML endpoints used the
75
79
default python XML parser. This parser is know to have security
76
80
issues. For details see: https://pypi.org/project/defusedxml/.
77
81
You may wish to use the rest interface which doesn't have the same
78
82
issues. Patches with tests to roundup to use defusedxml are welcome.
79
83
80
- Note that the current ``roundup-xmlrpc-server`` implementation does
81
- not support SSL. This means that usernames and passwords will be
82
- passed in cleartext unless the server is being proxied behind another
83
- server (such as Apache or lighttpd) that provide SSL.
84
+ .. caution::
85
+
86
+ The current ``roundup-xmlrpc-server`` implementation does not support
87
+ SSL. This means that usernames and passwords will be passed in
88
+ cleartext unless the server is being proxied behind another server
89
+ (such as Apache or lighttpd) that provide SSL.
84
90
85
91
Client API
86
- ----------
92
+ ==========
87
93
The server currently implements seven methods/commands. Each method
88
94
requires that the user provide a username and password in the HTTP
89
95
authorization header in order to authenticate the request against the
@@ -137,7 +143,7 @@ filter arguments: *classname, list or None, attributes*
137
143
:ref:`query-tracker`.
138
144
======= ====================================================================
139
145
140
- sample python client
146
+ Sample Python Client
141
147
====================
142
148
143
149
This client will work if you turn off the x-requested-with header and
@@ -171,7 +177,7 @@ the only CSRF header check you require is the HTTP host header::
171
177
>>> roundup_server.lookup('user','admin')
172
178
'1'
173
179
174
- advanced python client adding anti-csrf headers
180
+ Advanced Python Client Adding anti-csrf Headers
175
181
===============================================
176
182
177
183
The one below adds Referer and X-Requested-With headers so it can pass
0 commit comments