nestjs-security-module
Version:
A plug-and-play NestJS security module with CORS, Helmet, rate limiting, audit logging, CSP, XSS sanitization, and more.
25 lines (24 loc) • 906 B
TypeScript
import { DynamicModule, Type } from "@nestjs/common";
export interface SecurityModuleOptions {
helmet?: boolean;
cors?: boolean | Record<string, any>;
rateLimit?: {
windowMs: number;
max: number;
};
auditLog?: boolean;
csp?: boolean | Record<string, any>;
sanitize?: boolean;
referrerPolicy?: boolean | Record<string, any>;
xFrameOptions?: boolean | 'DENY' | 'SAMEORIGIN';
hsts?: boolean | Record<string, any>;
xContentTypeOptions?: boolean;
expectCt?: boolean | Record<string, any>;
permissionsPolicy?: boolean | Record<string, string[]>;
crossOriginEmbedderPolicy?: boolean | Record<string, any>;
}
export interface SecurityModuleAsyncOptions {
imports?: Array<Type<any> | DynamicModule | Promise<DynamicModule>>;
inject?: any[];
useFactory: (...args: any[]) => SecurityModuleOptions | Promise<SecurityModuleOptions>;
}