调整接单密码强度规则
This commit is contained in:
@@ -1483,7 +1483,7 @@ export function validateWorkerUsername(username: string) {
|
||||
|
||||
export function validateWorkerPassword(password: string) {
|
||||
if (!isWorkerPasswordStrong(password)) {
|
||||
throw createHttpError('接单密码至少 6 位,且必须包含大写字母、小写字母、数字和标点符号', {
|
||||
throw createHttpError('接单密码至少 8 位,且必须包含英文字母和数字', {
|
||||
statusCode: 400,
|
||||
errorCode: 'worker_password_invalid',
|
||||
})
|
||||
@@ -1491,13 +1491,7 @@ export function validateWorkerPassword(password: string) {
|
||||
}
|
||||
|
||||
export function isWorkerPasswordStrong(password: string): boolean {
|
||||
return (
|
||||
password.length >= 6 &&
|
||||
/[A-Z]/.test(password) &&
|
||||
/[a-z]/.test(password) &&
|
||||
/\d/.test(password) &&
|
||||
/[\p{P}\p{S}]/u.test(password)
|
||||
)
|
||||
return password.length >= 8 && /[a-zA-Z]/.test(password) && /\d/.test(password)
|
||||
}
|
||||
|
||||
export function normalizeSessionVersion(value: unknown): number {
|
||||
|
||||
@@ -154,14 +154,14 @@ test('assertWorkerLoginAllowed allows active workers', () => {
|
||||
assert.doesNotThrow(() => assertWorkerLoginAllowed(buildWorkerUserRow()))
|
||||
})
|
||||
|
||||
test('接单密码必须包含大小写字母、数字和标点符号', () => {
|
||||
assert.equal(isWorkerPasswordStrong('Aa1234!'), true)
|
||||
assert.equal(isWorkerPasswordStrong('aa1234!'), false)
|
||||
assert.equal(isWorkerPasswordStrong('AA1234!'), false)
|
||||
assert.equal(isWorkerPasswordStrong('Aaabcd!'), false)
|
||||
assert.equal(isWorkerPasswordStrong('Aa123456'), false)
|
||||
assert.equal(isWorkerPasswordStrong('Aa1!'), false)
|
||||
assert.throws(() => validateWorkerPassword('Aa123456'), { errorCode: 'worker_password_invalid' })
|
||||
test('接单密码至少八位且必须包含英文字母和数字', () => {
|
||||
assert.equal(isWorkerPasswordStrong('abc12345'), true)
|
||||
assert.equal(isWorkerPasswordStrong('ABC12345'), true)
|
||||
assert.equal(isWorkerPasswordStrong('12345678'), false)
|
||||
assert.equal(isWorkerPasswordStrong('abcdefgh'), false)
|
||||
assert.equal(isWorkerPasswordStrong('abc1234'), false)
|
||||
assert.doesNotThrow(() => validateWorkerPassword('abc12345'))
|
||||
assert.throws(() => validateWorkerPassword('12345678'), { errorCode: 'worker_password_invalid' })
|
||||
})
|
||||
|
||||
test('排行榜打手名称仅展示首字符', () => {
|
||||
|
||||
Reference in New Issue
Block a user