feat: add security plugin
Made-with: Cursor
This commit is contained in:
21
src/plugins/security.ts
Normal file
21
src/plugins/security.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { FastifyInstance, FastifyPluginAsync } from 'fastify';
|
||||
import helmet from '@fastify/helmet';
|
||||
import cors from '@fastify/cors';
|
||||
import fp from 'fastify-plugin';
|
||||
import { getCorsOrigins } from '../config/env.js';
|
||||
|
||||
const securityPlugin: FastifyPluginAsync = async (app: FastifyInstance) => {
|
||||
await app.register(helmet, {
|
||||
contentSecurityPolicy: false,
|
||||
crossOriginEmbedderPolicy: false,
|
||||
});
|
||||
|
||||
await app.register(cors, {
|
||||
origin: getCorsOrigins(),
|
||||
credentials: true,
|
||||
methods: ['GET', 'POST', 'PATCH', 'DELETE', 'PUT', 'OPTIONS'],
|
||||
allowedHeaders: ['Content-Type', 'Authorization'],
|
||||
});
|
||||
};
|
||||
|
||||
export default fp(securityPlugin, { name: 'security' });
|
||||
Reference in New Issue
Block a user