mirror of
https://github.com/kikootwo/ReadMeABook.git
synced 2026-06-02 20:30:10 +00:00
refactor(auth): reuse tokenHash from generateApiToken
This commit is contained in:
@@ -8,7 +8,6 @@ import { requireAuth, requireAdmin, AuthenticatedRequest } from '@/lib/middlewar
|
|||||||
import { prisma } from '@/lib/db';
|
import { prisma } from '@/lib/db';
|
||||||
import { RMABLogger } from '@/lib/utils/logger';
|
import { RMABLogger } from '@/lib/utils/logger';
|
||||||
import { generateApiToken } from '@/lib/utils/api-token';
|
import { generateApiToken } from '@/lib/utils/api-token';
|
||||||
import crypto from 'crypto';
|
|
||||||
|
|
||||||
const logger = RMABLogger.create('API.Admin.Users.LoginToken');
|
const logger = RMABLogger.create('API.Admin.Users.LoginToken');
|
||||||
|
|
||||||
@@ -37,8 +36,7 @@ export async function POST(
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const { fullToken } = generateApiToken();
|
const { fullToken, tokenHash } = generateApiToken();
|
||||||
const tokenHash = crypto.createHash('sha256').update(fullToken).digest('hex');
|
|
||||||
|
|
||||||
await prisma.user.update({
|
await prisma.user.update({
|
||||||
where: { id },
|
where: { id },
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ describe('Admin login token routes', () => {
|
|||||||
authRequest = { user: { id: 'admin-1', username: 'admin', role: 'admin' }, json: vi.fn() };
|
authRequest = { user: { id: 'admin-1', username: 'admin', role: 'admin' }, json: vi.fn() };
|
||||||
requireAuthMock.mockImplementation((_req: any, handler: any) => handler(authRequest));
|
requireAuthMock.mockImplementation((_req: any, handler: any) => handler(authRequest));
|
||||||
requireAdminMock.mockImplementation((_req: any, handler: any) => handler());
|
requireAdminMock.mockImplementation((_req: any, handler: any) => handler());
|
||||||
generateApiTokenMock.mockReturnValue({ fullToken: 'rmab_test_token' });
|
generateApiTokenMock.mockReturnValue({ fullToken: 'rmab_test_token', tokenHash: 'hash_abc123' });
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('POST /api/admin/users/[id]/login-token', () => {
|
describe('POST /api/admin/users/[id]/login-token', () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user