From e2dd012b49ab0b1ac73fcf888ee9499a507e9795 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Thu, 22 Sep 2022 16:41:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E9=98=B2=E7=9B=97=E9=93=BE?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/rpc/services/service_http_web.go | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/internal/rpc/services/service_http_web.go b/internal/rpc/services/service_http_web.go index a36c5ded..42d68b4b 100644 --- a/internal/rpc/services/service_http_web.go +++ b/internal/rpc/services/service_http_web.go @@ -757,11 +757,20 @@ func (this *HTTPWebService) FindHTTPWebRequestScripts(ctx context.Context, req * // UpdateHTTPWebReferers 修改防盗链设置 func (this *HTTPWebService) UpdateHTTPWebReferers(ctx context.Context, req *pb.UpdateHTTPWebReferersRequest) (*pb.RPCSuccess, error) { - _, err := this.ValidateAdmin(ctx) + _, userId, err := this.ValidateAdminAndUser(ctx, true) if err != nil { return nil, err } + var tx = this.NullTx() + + if userId > 0 { + err = models.SharedHTTPWebDAO.CheckUserWeb(tx, userId, req.HttpWebId) + if err != nil { + return nil, err + } + } + var config = &serverconfigs.ReferersConfig{} if len(req.ReferersJSON) > 0 { err = json.Unmarshal(req.ReferersJSON, config) @@ -775,7 +784,6 @@ func (this *HTTPWebService) UpdateHTTPWebReferers(ctx context.Context, req *pb.U } } - var tx = this.NullTx() err = models.SharedHTTPWebDAO.UpdateWebReferers(tx, req.HttpWebId, config) if err != nil { return nil, err @@ -786,12 +794,20 @@ func (this *HTTPWebService) UpdateHTTPWebReferers(ctx context.Context, req *pb.U // FindHTTPWebReferers 查找防盗链设置 func (this *HTTPWebService) FindHTTPWebReferers(ctx context.Context, req *pb.FindHTTPWebReferersRequest) (*pb.FindHTTPWebReferersResponse, error) { - _, err := this.ValidateAdmin(ctx) + _, userId, err := this.ValidateAdminAndUser(ctx, true) if err != nil { return nil, err } var tx = this.NullTx() + + if userId > 0 { + err = models.SharedHTTPWebDAO.CheckUserWeb(tx, userId, req.HttpWebId) + if err != nil { + return nil, err + } + } + config, err := models.SharedHTTPWebDAO.FindWebReferers(tx, req.HttpWebId) if err != nil { return nil, err