fix: #168 安全优化: 设置数据接口密码隐藏处理

This commit is contained in:
涵曦 2024-09-15 15:51:44 +08:00
parent ba58d45d8b
commit 270076b9a7

View File

@ -184,6 +184,8 @@ async def do_cmd(data: DidCmd, Verifcation=Depends(verification)):
async def getsetting(need_device_list: bool = False, Verifcation=Depends(verification)): async def getsetting(need_device_list: bool = False, Verifcation=Depends(verification)):
config = xiaomusic.getconfig() config = xiaomusic.getconfig()
data = asdict(config) data = asdict(config)
data["password"] = "******"
data["httpauth_password"] = "******"
if need_device_list: if need_device_list:
device_list = await xiaomusic.getalldevices() device_list = await xiaomusic.getalldevices()
log.info(f"getsetting device_list: {device_list}") log.info(f"getsetting device_list: {device_list}")
@ -198,6 +200,11 @@ async def savesetting(request: Request, Verifcation=Depends(verification)):
data = json.loads(data_json.decode("utf-8")) data = json.loads(data_json.decode("utf-8"))
debug_data = deepcopy_data_no_sensitive_info(data) debug_data = deepcopy_data_no_sensitive_info(data)
log.info(f"saveconfig: {debug_data}") log.info(f"saveconfig: {debug_data}")
config = xiaomusic.getconfig()
if data["password"] == "******" or data["password"] == "":
data["password"] = config.password
if data["httpauth_password"] == "******" or data["httpauth_password"] == "":
data["httpauth_password"] = config.httpauth_password
await xiaomusic.saveconfig(data) await xiaomusic.saveconfig(data)
reset_http_server() reset_http_server()
return "save success" return "save success"