siyuan/kernel/conf/publish.go
Yingyi / 颖逸 ba2193403d
Support read-only publish service
* 🎨 kernel supports read-only publishing services

* 🐛 Fix authentication vulnerabilities

* 🎨 Protect secret information

* 🎨 Adjust the permission control

* 🎨 Adjust the permission control

* 🎨 Fixed the vulnerability that `getFile` gets file `conf.json`

* 🎨 Add API `/api/setting/setPublish`

* 🎨 Add API `/api/setting/getPublish`

* 🐛 Fixed the issue that PWA-related files could not pass BasicAuth

* 🎨 Add a settings panel for publishing features

* 📝 Add guide for `Publish Service`

* 📝 Update Japanese user guide

* 🎨 Merge fixed static file services
2024-06-12 21:03:51 +08:00

45 lines
1.4 KiB
Go

// SiYuan - Refactor your thinking
// Copyright (c) 2020-present, b3log.org
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
package conf
type Publish struct {
Enable bool `json:"enable"` // 是否启用发布服务
Port uint16 `json:"port"` // 发布服务端口
Auth *BasicAuth `json:"auth"` // Basic 认证
}
type BasicAuth struct {
Enable bool `json:"enable"` // 是否启用基础认证
Accounts []*BasicAuthAccount `json:"accounts"` // 账户列表
}
type BasicAuthAccount struct {
Username string `json:"username"` // 用户名
Password string `json:"password"` // 密码
Memo string `json:"memo"` // 备注
}
func NewPublish() *Publish {
return &Publish{
Enable: false,
Port: 6808,
Auth: &BasicAuth{
Enable: true,
Accounts: []*BasicAuthAccount{},
},
}
}