fix(core): Use JWT as reset password token (#6714)
* use jwt to reset password * increase expiration time to 1d * drop user id query string * refactor * use service instead of package in tests * sqlite migration * postgres migration * mysql migration * remove unused properties * remove userId from FE * fix test for users.api * move migration to the common folder * move type assertion to the jwt.service * Add jwt secret as a readonly property * use signData instead of sign in user.controller * remove base class * remove base class * add tests
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
import type { MigrationContext, ReversibleMigration } from '@db/types';
|
||||
import { TableColumn } from 'typeorm';
|
||||
|
||||
export class RemoveResetPasswordColumns1690000000030 implements ReversibleMigration {
|
||||
async up({ queryRunner, tablePrefix }: MigrationContext) {
|
||||
await queryRunner.dropColumn(`${tablePrefix}user`, 'resetPasswordToken');
|
||||
await queryRunner.dropColumn(`${tablePrefix}user`, 'resetPasswordTokenExpiration');
|
||||
}
|
||||
|
||||
async down({ queryRunner, tablePrefix }: MigrationContext) {
|
||||
await queryRunner.addColumn(
|
||||
`${tablePrefix}user`,
|
||||
new TableColumn({
|
||||
name: 'resetPasswordToken',
|
||||
type: 'varchar',
|
||||
isNullable: true,
|
||||
}),
|
||||
);
|
||||
|
||||
await queryRunner.addColumn(
|
||||
`${tablePrefix}user`,
|
||||
new TableColumn({
|
||||
name: 'resetPasswordTokenExpiration',
|
||||
type: 'int',
|
||||
isNullable: true,
|
||||
}),
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user