mirror of
https://github.com/Buriburizaem0n/nezha_domains.git
synced 2026-11-04 16:40:21 +00:00
fix(controller): enforce ownership on notification group, NAT server, and batch move
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba>
This commit is contained in:
1 parent
58f98db1a0
commit
2a65a7db80
6 files changed
+109
-32
No files matched your search
@@ -336,6 +336,10 @@ func batchMoveServer(c *gin.Context) (any, error) {
|
||||
return nil, singleton.Localizer.ErrorT("user id is required")
|
||||
}
|
||||
|
||||
if !callerIsAdmin(c) && moveForm.ToUser != getUid(c) {
|
||||
return nil, singleton.Localizer.ErrorT("permission denied")
|
||||
}
|
||||
|
||||
singleton.UserLock.RLock()
|
||||
defer singleton.UserLock.RUnlock()
|
||||
if _, ok := singleton.UserInfoMap[moveForm.ToUser]; !ok {
|
||||
@@ -412,10 +416,10 @@ func getServerMetrics(c *gin.Context) (*model.ServerMetricsResponse, error) {
|
||||
return nil, singleton.Localizer.ErrorT("server not found")
|
||||
}
|
||||
|
||||
_, isMember := c.Get(model.CtxKeyAuthorizedUser)
|
||||
if server.HideForGuest && !isMember {
|
||||
if !userCanViewServer(c, server) {
|
||||
return nil, singleton.Localizer.ErrorT("unauthorized")
|
||||
}
|
||||
_, isMember := c.Get(model.CtxKeyAuthorizedUser)
|
||||
|
||||
metricName := c.Query("metric")
|
||||
metricType, ok := serverMetricMap[metricName]
|
||||
|
||||
Reference in new issue
Block a user