Mercurial > prosody-hg
view tools/migration/migrator.cfg.lua @ 12659:c0eea4f6c739
usermanager: Add back temporary is_admin to warn about deprecated API usage
Goal: Introduce role-auth with minimal disruption
is_admin() is unsafe in a system with per-session permissions, so it has been
deprecated.
Roll-out approach:
1) First, log a warning when is_admin() is used. It should continue to
function normally, backed by the new role API. Nothing is really using
per-session authz yet, so there is minimal security concern.
The 'strict_deprecate_is_admin' global setting can be set to 'true' to
force a hard failure of is_admin() attempts (it will log an error and
always return false).
2) In some time (at least 1 week), but possibly longer depending on the number
of affected deployments: switch 'strict_deprecate_is_admin' to 'true' by
default. It can still be disabled for systems that need it.
3) Further in the future, before the next release, the option will be removed
and is_admin() will be permanently disabled.
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Mon, 15 Aug 2022 15:25:07 +0100 |
| parents | 33e856c65033 |
| children | b788307ca06a |
line wrap: on
line source
local data_path = "../../data"; local vhost = { "accounts", "account_details", "roster", "vcard", "private", "blocklist", "privacy", "archive-archive", "offline-archive", "pubsub_nodes-pubsub", "pep-pubsub", } local muc = { "persistent", "config", "state", "muc_log-archive", }; input { hosts = { ["example.com"] = vhost; ["conference.example.com"] = muc; }; type = "internal"; path = data_path; } output { type = "sql"; driver = "SQLite3"; database = data_path.."/prosody.sqlite"; } --[[ input { type = "internal"; path = data_path; } output { type = "sql"; driver = "SQLite3"; database = data_path.."/prosody.sqlite"; } ]]
