volume: require admin auth on ReadAllNeedles and VolumeNeedleStatus (#9437)
Both RPCs hand out raw needle bytes / cookies. Run them through checkGrpcAdminAuth like the rest of the volume-server admin handlers.
This commit is contained in:
parent
46bb70d93e
commit
2b21d19e4c
@ -398,6 +398,10 @@ func (vs *VolumeServer) VolumeNeedleStatus(ctx context.Context, req *volume_serv
|
||||
|
||||
resp := &volume_server_pb.VolumeNeedleStatusResponse{}
|
||||
|
||||
if err := vs.checkGrpcAdminAuth(ctx); err != nil {
|
||||
return resp, err
|
||||
}
|
||||
|
||||
volumeId := needle.VolumeId(req.VolumeId)
|
||||
|
||||
n := &needle.Needle{
|
||||
|
||||
@ -11,6 +11,10 @@ import (
|
||||
|
||||
func (vs *VolumeServer) ReadAllNeedles(req *volume_server_pb.ReadAllNeedlesRequest, stream volume_server_pb.VolumeServer_ReadAllNeedlesServer) (err error) {
|
||||
|
||||
if err := vs.checkGrpcAdminAuth(stream.Context()); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for _, vid := range req.VolumeIds {
|
||||
if err := vs.streamReadOneVolume(needle.VolumeId(vid), stream); err != nil {
|
||||
stats.VolumeServerFileReadFailures.Inc()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user