feat: add anti-tamper guard for standard template tuning page
This commit is contained in:
parent
b2cb0b9a67
commit
8d8daf1b7f
@ -3418,6 +3418,12 @@ func (u *UI) pageTemplateSettings(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
if data.AssetTemplate.ReadOnly {
|
||||
data.Error = "这是标准模板,不能直接调整参数。请先在控制台部署一次,系统会自动复制为用户模板。"
|
||||
u.render(w, r, "template_settings", data)
|
||||
return
|
||||
}
|
||||
|
||||
if items, err := u.preview.GetTuningItems(name); err == nil {
|
||||
data.TuningItems = items
|
||||
// Group items
|
||||
@ -3445,6 +3451,12 @@ func (u *UI) actionTemplateSettings(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
action := r.FormValue("action")
|
||||
|
||||
// Prevent modifying standard templates
|
||||
if strings.HasPrefix(name, "std_") {
|
||||
http.Error(w, "标准模板不允许修改", http.StatusForbidden)
|
||||
return
|
||||
}
|
||||
|
||||
// Collect tuning values from form
|
||||
values := map[string]float64{}
|
||||
for key, vals := range r.Form {
|
||||
|
||||
@ -1,5 +1,8 @@
|
||||
{{define "template_settings"}}
|
||||
{{template "asset_tabs" .}}
|
||||
{{if .Error}}
|
||||
<div class="card error">{{.Error}}</div>
|
||||
{{end}}
|
||||
{{if .TuningItems}}
|
||||
<div class="card">
|
||||
<div class="section-title">
|
||||
|
||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user