annotate mod_client_management/README.md @ 5472:b80b6947b079

mod_http_oauth2: Always show early errors to user Before having validated the client_id, communicating an error back to the client via redirect would make this an open redirect, so we may just as well skip past that logic, and especially the warning log message.
author Kim Alvefur <zash@zash.se>
date Thu, 18 May 2023 13:43:17 +0200
parents 7c123d3285de
children e9af6abf2b1e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5294
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 ---
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2 labels:
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 - Stage-Beta
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 summary: "Manage clients with access to your account"
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 rockspec:
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 dependencies:
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 - mod_sasl2_fast
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 ---
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10 This module allows a user to identify what currently has access to their
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 account.
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 This module depends on [mod_sasl2_fast] and mod_tokenauth (bundled with
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
14 Prosody). Both will be automatically loaded if this module is loaded.
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
16 ## Configuration
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18 | Name | Description | Default |
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19 |---------------------------|--------------------------------------------------------|-----------------|
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
20 | enforce_client_ids | Only allow SASL2-compatible clients | `false` |
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
22 When `enforce_client_ids` is not enabled, the client listing may be less accurate due to legacy clients,
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
23 which can only be tracked by their resource, which is public information, not necessarily unique to a
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24 client instance, and is also exposed to other XMPP entities the user communicates with.
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
25
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
26 When `enforce_client_ids` is enabled, clients that don't support SASL2 and provide a client id will be
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
27 denied access.
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
28
5314
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
29 ## Shell usage
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
30
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
31 You can use this module via the Prosody shell. For example, to list a user's
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
32 clients:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
33
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
34 ```shell
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
35 prosodyctl shell user clients user@example.com
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
36 ```
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
37
5294
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
38 ## Compatibility
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
39
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
40 Requires Prosody trunk (as of 2023-03-29). Not compatible with Prosody 0.12
385346b6c81d mod_client_management: New module for users to view/manage permitted clients
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
41 and earlier.
5314
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
42
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
43 ## Developers
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
44
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
45 ### Protocol
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
46
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
47 #### Listing clients
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
48
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
49 To list clients that have access to the user's account, send the following
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
50 stanza:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
51
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
52 ```xml
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
53 <iq id="p" type="get">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
54 <list xmlns="xmpp:prosody.im/protocol/manage-clients"/>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
55 </iq>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
56 ```
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
57
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
58 The server will respond with a list of clients:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
59
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
60 ```xml
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
61 <iq id="p" to="mattj-gajim@auth2.superxmpp.com/gajim.UYJKBHKT" type="result" xmlns="jabber:client">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
62 <clients xmlns="xmpp:prosody.im/protocol/manage-clients">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
63 <client connected="true" id="client/zeiP41HLglIu" type="session">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
64 <first-seen>2023-04-06T14:26:08Z</first-seen>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
65 <last-seen>2023-04-06T14:37:25Z</last-seen>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
66 <auth>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
67 <password/>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
68 </auth>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
69 <user-agent>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
70 <software>Gajim</software>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
71 <uri>https://gajim.org/</uri>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
72 <device>Juliet's laptop</device>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
73 </user-agent>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
74 </client>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
75 <client connected="false" id="grant/HjEEr45_LQr" type="access">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
76 <first-seen>2023-03-27T15:16:09Z</first-seen>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
77 <last-seen>2023-03-27T15:37:24Z</last-seen>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
78 <user-agent>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
79 <software>REST client</software>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
80 </user-agent>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
81 </client>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
82 </clients>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
83 </iq>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
84 ```
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
85
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
86 On the `<client/>` tag most things are self-explanatory. The following attributes
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
87 are defined:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
88
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
89 - 'connected': a boolean that reflects whether this client has an active session
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
90 on the server (i.e. this includes connected and "hibernating" sessions).
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
91 - 'id': an opaque reference for the client, which can be used to revoke access.
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
92 - 'type': either `"session"` if this client is known to have an active or inactive
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
93 client session on the server, or "access" if no session has been established (e.g.
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
94 it may have been granted access to the account, but only used non-XMPP APIs or
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
95 never logged in).
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
96
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
97 The `<first-seen/>` and `<last-seen/>` elements contain timestamps that reflect
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
98 when a client was first granted access to the user's account, and when it most
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
99 recently used that access. For active sessions, it may reflect the current
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
100 time or the time of the last login.
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
101
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
102 The `<user-agent/>` element contains information about the client software. It
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
103 may contain any of three optional child elements, each containing text content:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
104
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
105 - `<software/>` - the name of the software
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
106 - `<uri/>` - a URI/URL for the client, such as a homepage
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
107 - `<device/>` - a human-readable identifier/name for the device where the client
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
108 runs
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
109
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
110 The `<auth/>` element lists the known authentication methods that the client
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
111 has used to gain access to the account. The following elements are defined:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
112
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
113 - `<password/>` - the client has presented a valid password
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
114 - `<grant/>` - the client has a valid authorization grant (e.g. via OAuth)
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
115 - `<fast/>` - the client has active FAST tokens
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
116
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
117 #### Revoking access
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
118
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
119 To revoke a client's access, send a `<revoke/>` element with an 'id' attribute
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
120 containing one of the client ids fetched from the list:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
121
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
122 ```xml
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
123 <iq id="p" type="set">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
124 <revoke xmlns="xmpp:prosody.im/protocol/manage-clients" id="grant/HjEEr45_LQr" />
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
125 </iq>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
126 ```
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
127
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
128 The server will respond with an empty result if the revocation succeeds:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
129
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
130 ```xml
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
131 <iq id="p" type="result" />
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
132 ```
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
133
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
134 If the client has previously authenticated with a password, there is no way to
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
135 revoke access except by changing the user's password. If you request
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
136 revocation of such a client, the server will respond with a 'service-unavailable'
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
137 error, with the 'password-reset-required' application error:
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
138
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
139 ```xml
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
140 <iq id="p" type="error">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
141 <error type="cancel">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
142 <service-unavailable xmlns="xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'">
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
143 <password-reset-required xmlns="xmpp:prosody.im/protocol/manage-clients"/>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
144 </error>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
145 </iq>
7c123d3285de mod_client_management: README: Update docs to detail shell and XMPP interfaces
Matthew Wild <mwild1@gmail.com>
parents: 5294
diff changeset
146 ```