mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-25 08:33:53 +08:00
update:优化参数配置敏感密钥的显示方式
This commit is contained in:
@@ -25,8 +25,19 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="参数编码" prop="paramCode" align="center"></el-table-column>
|
<el-table-column label="参数编码" prop="paramCode" align="center"></el-table-column>
|
||||||
<el-table-column label="参数值" prop="paramValue" align="center"
|
<el-table-column label="参数值" prop="paramValue" align="center" show-overflow-tooltip>
|
||||||
show-overflow-tooltip></el-table-column>
|
<template slot-scope="scope">
|
||||||
|
<div v-if="isSensitiveParam(scope.row.paramCode)">
|
||||||
|
<span v-if="!scope.row.showValue">{{ maskSensitiveValue(scope.row.paramValue)
|
||||||
|
}}</span>
|
||||||
|
<span v-else>{{ scope.row.paramValue }}</span>
|
||||||
|
<el-button size="mini" type="text" @click="toggleSensitiveValue(scope.row)">
|
||||||
|
{{ scope.row.showValue ? '隐藏' : '查看' }}
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<span v-else>{{ scope.row.paramValue }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark" align="center"></el-table-column>
|
<el-table-column label="备注" prop="remark" align="center"></el-table-column>
|
||||||
<el-table-column label="操作" align="center">
|
<el-table-column label="操作" align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -100,6 +111,7 @@ export default {
|
|||||||
dialogVisible: false,
|
dialogVisible: false,
|
||||||
dialogTitle: "新增参数",
|
dialogTitle: "新增参数",
|
||||||
isAllSelected: false,
|
isAllSelected: false,
|
||||||
|
sensitive_keys: ["api_key", "personal_access_token", "access_token", "token", "secret", "access_key_secret", "secret_key"],
|
||||||
paramForm: {
|
paramForm: {
|
||||||
id: null,
|
id: null,
|
||||||
paramCode: "",
|
paramCode: "",
|
||||||
@@ -152,7 +164,8 @@ export default {
|
|||||||
if (data.code === 0) {
|
if (data.code === 0) {
|
||||||
this.paramsList = data.data.list.map(item => ({
|
this.paramsList = data.data.list.map(item => ({
|
||||||
...item,
|
...item,
|
||||||
selected: false
|
selected: false,
|
||||||
|
showValue: false
|
||||||
}));
|
}));
|
||||||
this.total = data.data.total;
|
this.total = data.data.total;
|
||||||
} else {
|
} else {
|
||||||
@@ -314,7 +327,18 @@ export default {
|
|||||||
goToPage(page) {
|
goToPage(page) {
|
||||||
this.currentPage = page;
|
this.currentPage = page;
|
||||||
this.fetchParams();
|
this.fetchParams();
|
||||||
}
|
},
|
||||||
|
isSensitiveParam(paramCode) {
|
||||||
|
return this.sensitive_keys.some(key => paramCode.toLowerCase().includes(key.toLowerCase()));
|
||||||
|
},
|
||||||
|
maskSensitiveValue(value) {
|
||||||
|
if (!value) return '';
|
||||||
|
if (value.length <= 8) return '****';
|
||||||
|
return value.substring(0, 4) + '****' + value.substring(value.length - 4);
|
||||||
|
},
|
||||||
|
toggleSensitiveValue(row) {
|
||||||
|
this.$set(row, 'showValue', !row.showValue);
|
||||||
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1090,6 +1090,7 @@ def filter_sensitive_info(config: dict) -> dict:
|
|||||||
"personal_access_token",
|
"personal_access_token",
|
||||||
"access_token",
|
"access_token",
|
||||||
"token",
|
"token",
|
||||||
|
"secret",
|
||||||
"access_key_secret",
|
"access_key_secret",
|
||||||
"secret_key",
|
"secret_key",
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user