Software /
code /
prosody
Comparison
core/sessionmanager.lua @ 12662:07424992d7fc
mod_authz_internal, and more: New iteration of role API
These changes to the API (hopefully the last) introduce a cleaner separation
between the user's primary (default) role, and their secondary (optional)
roles.
To keep the code sane and reduce complexity, a data migration is needed for
people using stored roles in 0.12. This can be performed with
prosodyctl mod_authz_internal migrate <host>
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Wed, 17 Aug 2022 16:38:53 +0100 |
parent | 12648:f299e570a0fe |
child | 12677:3b9771d496ed |
comparison
equal
deleted
inserted
replaced
12661:1c391c17a907 | 12662:07424992d7fc |
---|---|
133 | 133 |
134 local role; | 134 local role; |
135 if role_name then | 135 if role_name then |
136 role = hosts[session.host].authz.get_role_by_name(role_name); | 136 role = hosts[session.host].authz.get_role_by_name(role_name); |
137 else | 137 else |
138 role = hosts[session.host].authz.get_user_default_role(username); | 138 role = hosts[session.host].authz.get_user_role(username); |
139 end | 139 end |
140 if role then | 140 if role then |
141 sessionlib.set_role(session, role); | 141 sessionlib.set_role(session, role); |
142 end | 142 end |
143 session.log("info", "Authenticated as %s@%s [%s]", username, session.host or "(unknown)", role and role.name or "no role"); | 143 session.log("info", "Authenticated as %s@%s [%s]", username, session.host or "(unknown)", role and role.name or "no role"); |