naibaandcloudcode e8dabf5bc6 feat(auth): add PAT auth, scoped REST/MCP access, CSRF, and tenant isolation
Introduce Personal Access Tokens (nzp_*) as a stateless auth path alongside
JWT, gated per-endpoint by a scope middleware (nezha:{resource}:{verb}) with
fail-closed empty-scope defaults and a server-id whitelist. Self-management
endpoints (profile, api-tokens, oauth2 bind, refresh-token) explicitly reject
PATs to block privilege-escalation chains. A revoke registry tears down active
long-lived connections (terminal, fm, ws, transfer, mcp) the moment a PAT is
deleted, with a tombstone closing the revoke->register race.

Add an MCP endpoint that proxies tool calls (exec, fs read/write/delete,
transfer) to agents over gRPC, guarded by origin/DNS-rebinding checks, a
per-token rate limiter, audit logging, and a kill switch. Serialize all
sends through the IOStream wrapper to honour grpc-go's concurrency contract.

Add CSRF double-submit protection on unsafe cookie-authenticated methods,
exempting authenticated PAT requests by context identity (not a forgeable
Authorization header). Apply visibility/whitelist filtering consistently
across list, get-by-id, and mutate paths to enforce tenant isolation.

Migrate legacy mcp:* scopes: rewrite read/exec to nezha:* equivalents and
drop dangerous write/delete/wildcard grants.

Co-authored-by: cloudcode <cloudcode@users.noreply.github.com>
2026-05-30 15:56:44 +00:00
2025-02-28 22:19:57 +08:00
2025-02-09 14:39:12 +08:00
2025-03-22 22:44:25 +08:00
2021-01-30 11:22:59 +08:00
2026-02-15 13:13:33 +08:00
2021-03-22 17:41:38 +08:00
2026-05-22 23:55:19 +08:00



LOGO designed by 熊大 .

GitHub release (with filter)   Translation status

:trollface: Nezha Monitoring: Self-hostable, lightweight, servers and websites monitoring and O&M tool.

Supports monitoring system status, HTTP (SSL certificate change, upcoming expiration, expired), TCP, Ping and supports push alerts, run scheduled tasks and web terminal.

>> Telegram Channel: 哪吒监控(中文通知频道)
>> Telegram Group: Nezha Monitoring Global (English Only), 哪吒监控(中文群组)

>> Use Cases | 我们的用户 (Google)

User Guide

Contributing

Translation

Translation status

Is Nezha not in your language, or the translation is incorrect or incomplete? Get involved in the translations on Hosted Weblate.

Screenshots

用户前台 @hamster1963 管理后台 @nezhahq
user admin
hamster1963/nezha-dash nezhahq/admin-frontend

add your theme to service/singleton/frontend-templates.yaml

Contributors

naiba

UUBulb Akkia 卖女孩的小火柴 nap0o 黑歌 xykt Weblate (bot) MikoyChinese JackieSung4ev Kris Lemoe spiritlhl 刘颜溪 CosmosZ-code Ko no dio Kris Mmx233 rootmelo92118 Moraxyc Xu 1ridic 仓鼠 zhucaidan Sean lyj fscarmen windingFlame JSker9 Hsukqi Lee Darc Z. Creling Core F adminsama Acgpiano eya46 guoyongchang Yoshihiro Miyamoto honeok IYUANWEIZE igophper lvyaoting quanljh unclezs 缘生 严浩 凌 榆木 93 Tony TomyJan Tater Li Tao Chen Spetrum NikoCat233 Nanjing Hopefun Network Technology Co. Ltd. Mingzhuo Yin Martijn Lindeman Leon KorenKrita Ian Li YiPing Zhang Esdese :D Coming

Special Thanks

  • IPInfo for providing an accurate GeoIP Database.

Star History

Star History Chart

S
Description
No description provided
Readme Apache-2.0
57 MiB
Languages
Go 99.3%
Shell 0.5%
PowerShell 0.2%