Чинит .env.example: убирает мёртвый ADMIN_TG_ID, добавляет PROXY_INTERNAL_SECRET
ADMIN_TG_ID нигде не читается с тех пор, как admin_guard заменили на ролевую систему (owner/staff/node_manage/partner_guard) — оставлять его в примерах вводит в заблуждение. PROXY_INTERNAL_SECRET, наоборот, обязателен (main.rs падает без него при старте), но отсутствовал во всех трёх .env*.example. Заодно поправлен src/modules/auth/README.md — описывал admin_guard, которого больше не существует.
This commit is contained in:
@@ -47,9 +47,12 @@
|
||||
cookie**, дополнительно проверяет `Origin`/`Referer` против `CSRF_ALLOWED_ORIGINS` — это
|
||||
CSRF-защита. Bearer-запросы её не проходят и не должны: подделать `Authorization`-заголовок
|
||||
с чужого origin браузер не даст, поэтому CSRF для них неактуален.
|
||||
- `admin_guard` — должен идти **после** `auth_guard` в цепочке слоёв (читает юзера из
|
||||
extensions). Пропускает, если `tg_id` юзера совпадает с `ADMIN_TG_ID` из `.env` или его
|
||||
`role == "admin"`.
|
||||
- `owner_guard` / `staff_guard` / `node_manage_guard` / `partner_guard` — ролевые гварды
|
||||
админки (Owner/Moderator/Partner), должны идти **после** `auth_guard` в цепочке слоёв
|
||||
(читают роль юзера из extensions, второй запрос к БД не нужен). Без завязки на Telegram —
|
||||
роль назначается через `staff`-модуль (создание Owner — CLI `--create-owner`, дальше
|
||||
Owner/Moderator создают друг друга через API). `node_manage_guard` — Owner всегда, либо
|
||||
Moderator с выданным правом `can_manage_nodes`.
|
||||
|
||||
## Sybil-защита
|
||||
|
||||
|
||||
Reference in New Issue
Block a user