oak-general-business/lib/utils/user.js

30 lines
1.0 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getUserSafetyFilter = getUserSafetyFilter;
exports.maskPassword = maskPassword;
function getUserSafetyFilter(context) {
const application = context.getApplication();
const { config } = application.system;
const { Security } = config || {};
if (Security && ['strong', 'medium'].includes(Security.level)) {
// 对于安全要求中高的系统,需要检查其验证密码时间
const stamp = Date.now() - Security.passwordVerifyGap;
return {
$or: [
{
verifyPasswordAt: {
$gte: stamp,
},
},
{
hasPassword: false,
}
]
};
}
}
function maskPassword(password) {
const encStr = "****************************************".slice(0, password.length - 2);
return password[0] + encStr + password[password.length - 1];
}