core: delete password field when logging

This commit is contained in:
undefined committed 2021-12-27 21:21:13 +08:00
1 parent 04f20dbdd9
commit 0b2a43d6e0
3 files changed
+9 -2

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "3.2.32",
"version": "3.2.33",
"bin": "bin/hydrooj.js",
"main": "src/loader",
"module": "src/loader",
+3 -1
View File
@@ -16,6 +16,8 @@ export async function add(data: Partial<OplogDoc> & { type: string }): Promise<O
}
export async function log<T extends Handler>(handler: T, type: string, data: any) {
const args = { ...handler.args };
delete args.password;
const res = await coll.insertOne({
...data,
_id: new ObjectID(),
@@ -24,7 +26,7 @@ export async function log<T extends Handler>(handler: T, type: string, data: any
domainId: handler.domainId,
ua: handler.request.headers?.['user-agent'],
referer: handler.request.headers?.referer,
args: handler.args,
args,
operator: handler.user?.id,
operateIp: handler.request.ip,
});
+5
View File
@@ -659,6 +659,11 @@ const scripts: UpgradeScript[] = [
await db.collection('document').updateMany({ docType: document.TYPE_PROBLEM }, { $unset: { difficulty: '' } });
return true;
},
async function _56_57() {
const _FRESH_INSTALL_IGNORE = 1;
await db.collection('oplog').deleteMany({ type: 'user.login' });
return true;
},
];
export default scripts;