Skip to content

Commit 06e8537

Browse files
committed
Improved request account validation
Signed-off-by: Neil Twigg <neil@nats.io>
1 parent e94fec4 commit 06e8537

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

server/jetstream_api.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2526,6 +2526,9 @@ func (s *Server) jsLeaderServerRemoveRequest(sub *subscription, c *client, _ *Ac
25262526
s.Warnf(badAPIRequestT, msg)
25272527
return
25282528
}
2529+
if acc != s.SystemAccount() {
2530+
return
2531+
}
25292532

25302533
js, cc := s.getJetStreamCluster()
25312534
if js == nil || cc == nil || cc.meta == nil {
@@ -2650,6 +2653,10 @@ func (s *Server) jsLeaderServerStreamMoveRequest(sub *subscription, c *client, _
26502653
accName := tokenAt(subject, 6)
26512654
streamName := tokenAt(subject, 7)
26522655

2656+
if acc.GetName() != accName && acc != s.SystemAccount() {
2657+
return
2658+
}
2659+
26532660
var resp = JSApiStreamUpdateResponse{ApiResponse: ApiResponse{Type: JSApiStreamUpdateResponseType}}
26542661

26552662
var req JSApiMetaServerStreamMoveRequest
@@ -2807,6 +2814,10 @@ func (s *Server) jsLeaderServerStreamCancelMoveRequest(sub *subscription, c *cli
28072814
accName := tokenAt(subject, 6)
28082815
streamName := tokenAt(subject, 7)
28092816

2817+
if acc.GetName() != accName && acc != s.SystemAccount() {
2818+
return
2819+
}
2820+
28102821
targetAcc, ok := s.accounts.Load(accName)
28112822
if !ok {
28122823
resp.Error = NewJSNoAccountError()
@@ -2893,6 +2904,9 @@ func (s *Server) jsLeaderAccountPurgeRequest(sub *subscription, c *client, _ *Ac
28932904
s.Warnf(badAPIRequestT, msg)
28942905
return
28952906
}
2907+
if acc != s.SystemAccount() {
2908+
return
2909+
}
28962910

28972911
js := s.getJetStream()
28982912
if js == nil {

0 commit comments

Comments
 (0)