diff --git a/spug_api/apps/setting/views.py b/spug_api/apps/setting/views.py index d88db82..5f915a3 100644 --- a/spug_api/apps/setting/views.py +++ b/spug_api/apps/setting/views.py @@ -14,8 +14,8 @@ import smtplib class SettingView(View): def get(self, request): - settings = Setting.objects.exclude(key__in=('public_key', 'private_key')) - return json_response(settings) + data = Setting.objects.all() + return json_response(data) def post(self, request): form, error = JsonParser( diff --git a/spug_web/src/pages/system/setting/KeySetting.js b/spug_web/src/pages/system/setting/KeySetting.js new file mode 100644 index 0000000..40ea1c2 --- /dev/null +++ b/spug_web/src/pages/system/setting/KeySetting.js @@ -0,0 +1,75 @@ +/** + * Copyright (c) OpenSpug Organization. https://github.com/openspug/spug + * Copyright (c) + * Released under the MIT License. + */ +import React from 'react'; +import { observer } from 'mobx-react'; +import { Alert, Button, Form, Input, Modal, message } from 'antd'; +import styles from './index.module.css'; +import http from 'libs/http'; +import store from './store'; +import lds from 'lodash'; + + +export default observer(function () { + function handleSubmit() { + Modal.confirm({ + title: '密钥修改确认', + content: 请谨慎修改密钥对,修改密钥对会让现有的主机都无法进行验证,影响与主机相关的各项功能!, + onOk: () => { + Modal.confirm({ + title: '小提示', + content:
修改密钥对需要重启服务后生效,已添加的主机需要重新进行编辑验证后才可以正常连接。
, + onOk: doModify + }) + } + }) + } + + function doModify() { + const public_key = lds.get(store.settings, 'public_key.value'); + const private_key = lds.get(store.settings, 'private_key.value'); + return http.post('/api/setting/', {data: [{key: 'public_key', value: public_key}, {key: 'private_key', value: private_key}]}) + .then(() => { + message.success('保存成功'); + store.fetchSettings() + }) + .finally(() => store.loading = false) + } + + return ( + +
密钥设置
+ +
+ + lds.set(store.settings, 'public_key.value', e.target.value)} + placeholder="请输入公钥"/> + + + lds.set(store.settings, 'private_key.value', e.target.value)} + placeholder="请输入私钥"/> + + + + +
+
+ ) +}) diff --git a/spug_web/src/pages/system/setting/index.js b/spug_web/src/pages/system/setting/index.js index 6832ed7..7bb2b3d 100644 --- a/spug_web/src/pages/system/setting/index.js +++ b/spug_web/src/pages/system/setting/index.js @@ -10,6 +10,7 @@ import BasicSetting from './BasicSetting'; import AlarmSetting from './AlarmSetting'; import LDAPSetting from './LDAPSetting'; import OpenService from './OpenService'; +import KeySetting from './KeySetting'; import About from './About'; import styles from './index.module.css'; import store from './store'; @@ -39,6 +40,7 @@ class Index extends React.Component { onSelect={({selectedKeys}) => this.setState({selectedKeys})}> 基本设置 LDAP设置 + 密钥设置 报警服务设置 开放服务设置 关于 @@ -49,6 +51,7 @@ class Index extends React.Component { {selectedKeys[0] === 'ldap' && } {selectedKeys[0] === 'alarm' && } {selectedKeys[0] === 'service' && } + {selectedKeys[0] === 'key' && } {selectedKeys[0] === 'about' && }