Software / code / prosody
Comparison
core/usermanager.lua @ 13766:b11242656300
Merge 13.0->trunk
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Tue, 11 Mar 2025 18:45:23 +0000 |
| parent | 13760:b5b0190ddc38 |
| child | 13782:4cfabfbb0691 |
comparison
equal
deleted
inserted
replaced
| 13759:1437d8884899 | 13766:b11242656300 |
|---|---|
| 107 end | 107 end |
| 108 | 108 |
| 109 local function set_password(username, password, host, resource) | 109 local function set_password(username, password, host, resource) |
| 110 local ok, err = hosts[host].users.set_password(username, password); | 110 local ok, err = hosts[host].users.set_password(username, password); |
| 111 if ok then | 111 if ok then |
| 112 log("info", "Account password changed: %s@%s", username, host); | |
| 112 prosody.events.fire_event("user-password-changed", { username = username, host = host, resource = resource }); | 113 prosody.events.fire_event("user-password-changed", { username = username, host = host, resource = resource }); |
| 113 end | 114 end |
| 114 return ok, err; | 115 return ok, err; |
| 115 end | 116 end |
| 116 | 117 |
| 124 if hosts[host].sessions[username] then return true; end | 125 if hosts[host].sessions[username] then return true; end |
| 125 return hosts[host].users.user_exists(username); | 126 return hosts[host].users.user_exists(username); |
| 126 end | 127 end |
| 127 | 128 |
| 128 local function create_user(username, password, host) | 129 local function create_user(username, password, host) |
| 129 return hosts[host].users.create_user(username, password); | 130 local ok, err = hosts[host].users.create_user(username, password); |
| 131 if ok then | |
| 132 log("info", "User account created: %s@%s", username, host); | |
| 133 end | |
| 134 return ok, err; | |
| 130 end | 135 end |
| 131 | 136 |
| 132 local function delete_user(username, host) | 137 local function delete_user(username, host) |
| 133 local ok, err = hosts[host].users.delete_user(username); | 138 local ok, err = hosts[host].users.delete_user(username); |
| 134 if not ok then return nil, err; end | 139 if not ok then return nil, err; end |
| 140 log("info", "User account deleted: %s@%s", username, host); | |
| 135 prosody.events.fire_event("user-deleted", { username = username, host = host }); | 141 prosody.events.fire_event("user-deleted", { username = username, host = host }); |
| 136 return storagemanager.purge(username, host); | 142 return storagemanager.purge(username, host); |
| 137 end | 143 end |
| 138 | 144 |
| 139 local function user_is_enabled(username, host) | 145 local function user_is_enabled(username, host) |
| 156 local function enable_user(username, host) | 162 local function enable_user(username, host) |
| 157 local method = hosts[host].users.enable; | 163 local method = hosts[host].users.enable; |
| 158 if not method then return nil, "method not supported"; end | 164 if not method then return nil, "method not supported"; end |
| 159 local ret, err = method(username); | 165 local ret, err = method(username); |
| 160 if ret then | 166 if ret then |
| 167 log("info", "User account enabled: %s@%s", username, host); | |
| 161 prosody.events.fire_event("user-enabled", { username = username, host = host }); | 168 prosody.events.fire_event("user-enabled", { username = username, host = host }); |
| 162 end | 169 end |
| 163 return ret, err; | 170 return ret, err; |
| 164 end | 171 end |
| 165 | 172 |
| 166 local function disable_user(username, host, meta) | 173 local function disable_user(username, host, meta) |
| 167 local method = hosts[host].users.disable; | 174 local method = hosts[host].users.disable; |
| 168 if not method then return nil, "method not supported"; end | 175 if not method then return nil, "method not supported"; end |
| 169 local ret, err = method(username, meta); | 176 local ret, err = method(username, meta); |
| 170 if ret then | 177 if ret then |
| 178 log("info", "User account disabled: %s@%s", username, host); | |
| 171 prosody.events.fire_event("user-disabled", { username = username, host = host, meta = meta }); | 179 prosody.events.fire_event("user-disabled", { username = username, host = host, meta = meta }); |
| 172 end | 180 end |
| 173 return ret, err; | 181 return ret, err; |
| 174 end | 182 end |
| 175 | 183 |
| 196 if host and not hosts[host] then return false; end | 204 if host and not hosts[host] then return false; end |
| 197 if type(user) ~= "string" then return false; end | 205 if type(user) ~= "string" then return false; end |
| 198 | 206 |
| 199 local role, err = hosts[host].authz.set_user_role(user, role_name); | 207 local role, err = hosts[host].authz.set_user_role(user, role_name); |
| 200 if role then | 208 if role then |
| 209 log("info", "Account %s@%s role changed to %s", user, host, role_name); | |
| 201 prosody.events.fire_event("user-role-changed", { | 210 prosody.events.fire_event("user-role-changed", { |
| 202 username = user, host = host, role = role; | 211 username = user, host = host, role = role; |
| 203 }); | 212 }); |
| 204 end | 213 end |
| 205 return role, err; | 214 return role, err; |