GuardMiddlewareProtocol
Defined in: core/src/protocols/middleware.ts:7
Properties
Section titled “Properties”agentHandler
Section titled “agentHandler”
readonlyagentHandler:AgentHandlerProtocol|null
Defined in: core/src/protocols/middleware.ts:16
config
Section titled “config”
readonlyconfig:object
Defined in: core/src/protocols/middleware.ts:8
agentApiKey
Section titled “agentApiKey”agentApiKey:
string|null
agentBufferSize
Section titled “agentBufferSize”agentBufferSize:
number
agentEnableEvents
Section titled “agentEnableEvents”agentEnableEvents:
boolean
agentEnableMetrics
Section titled “agentEnableMetrics”agentEnableMetrics:
boolean
agentEndpoint
Section titled “agentEndpoint”agentEndpoint:
string
agentFlushInterval
Section titled “agentFlushInterval”agentFlushInterval:
number
agentProjectId
Section titled “agentProjectId”agentProjectId:
string|null
agentRetryAttempts
Section titled “agentRetryAttempts”agentRetryAttempts:
number
agentTimeout
Section titled “agentTimeout”agentTimeout:
number
autoBanDuration
Section titled “autoBanDuration”autoBanDuration:
number
autoBanThreshold
Section titled “autoBanThreshold”autoBanThreshold:
number
blacklist
Section titled “blacklist”blacklist:
string[]
blockCloudProviders
Section titled “blockCloudProviders”blockCloudProviders:
Set<"AWS"|"GCP"|"Azure">
blockedCountries
Section titled “blockedCountries”blockedCountries:
string[]
blockedUserAgents
Section titled “blockedUserAgents”blockedUserAgents:
string[]
cloudIpRefreshInterval
Section titled “cloudIpRefreshInterval”cloudIpRefreshInterval:
number
corsAllowCredentials
Section titled “corsAllowCredentials”corsAllowCredentials:
boolean
corsAllowHeaders
Section titled “corsAllowHeaders”corsAllowHeaders:
string[]
corsAllowMethods
Section titled “corsAllowMethods”corsAllowMethods:
string[]
corsAllowOrigins
Section titled “corsAllowOrigins”corsAllowOrigins:
string[]
corsExposeHeaders
Section titled “corsExposeHeaders”corsExposeHeaders:
string[]
corsMaxAge
Section titled “corsMaxAge”corsMaxAge:
number
customErrorResponses
Section titled “customErrorResponses”customErrorResponses:
Record<number,string>
customLogFile
Section titled “customLogFile”customLogFile:
string|null
customRequestCheck?
Section titled “customRequestCheck?”
optionalcustomRequestCheck?: (req) =>Promise<GuardResponse|null>
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<GuardResponse | null>
customResponseModifier?
Section titled “customResponseModifier?”
optionalcustomResponseModifier?: (res) =>Promise<GuardResponse>
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<GuardResponse>
detectionAnomalyThreshold
Section titled “detectionAnomalyThreshold”detectionAnomalyThreshold:
number
detectionCompilerTimeout
Section titled “detectionCompilerTimeout”detectionCompilerTimeout:
number
detectionMaxContentLength
Section titled “detectionMaxContentLength”detectionMaxContentLength:
number
detectionMaxTrackedPatterns
Section titled “detectionMaxTrackedPatterns”detectionMaxTrackedPatterns:
number
detectionMonitorHistorySize
Section titled “detectionMonitorHistorySize”detectionMonitorHistorySize:
number
detectionPreserveAttackPatterns
Section titled “detectionPreserveAttackPatterns”detectionPreserveAttackPatterns:
boolean
detectionSemanticThreshold
Section titled “detectionSemanticThreshold”detectionSemanticThreshold:
number
detectionSlowPatternThreshold
Section titled “detectionSlowPatternThreshold”detectionSlowPatternThreshold:
number
dynamicRuleInterval
Section titled “dynamicRuleInterval”dynamicRuleInterval:
number
emergencyMode
Section titled “emergencyMode”emergencyMode:
boolean
emergencyWhitelist
Section titled “emergencyWhitelist”emergencyWhitelist:
string[]
enableAgent
Section titled “enableAgent”enableAgent:
boolean
enableCors
Section titled “enableCors”enableCors:
boolean
enableDynamicRules
Section titled “enableDynamicRules”enableDynamicRules:
boolean
enableIpBanning
Section titled “enableIpBanning”enableIpBanning:
boolean
enablePenetrationDetection
Section titled “enablePenetrationDetection”enablePenetrationDetection:
boolean
enableRateLimiting
Section titled “enableRateLimiting”enableRateLimiting:
boolean
enableRedis
Section titled “enableRedis”enableRedis:
boolean
endpointRateLimits
Section titled “endpointRateLimits”endpointRateLimits:
Record<string, [number,number]>
enforceHttps
Section titled “enforceHttps”enforceHttps:
boolean
excludePaths
Section titled “excludePaths”excludePaths:
string[]
geoIpHandler?
Section titled “geoIpHandler?”
optionalgeoIpHandler?:GeoIPHandler
geoResolver?
Section titled “geoResolver?”
optionalgeoResolver?: (ip) =>string|null
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”string | null
logFormat
Section titled “logFormat”logFormat:
"text"|"json"
logger?
Section titled “logger?”
optionallogger?:Logger
logRequestLevel
Section titled “logRequestLevel”logRequestLevel:
"INFO"|"DEBUG"|"WARNING"|"ERROR"|"CRITICAL"|null
logSuspiciousLevel
Section titled “logSuspiciousLevel”logSuspiciousLevel:
"INFO"|"DEBUG"|"WARNING"|"ERROR"|"CRITICAL"|null
passiveMode
Section titled “passiveMode”passiveMode:
boolean
rateLimit
Section titled “rateLimit”rateLimit:
number
rateLimitWindow
Section titled “rateLimitWindow”rateLimitWindow:
number
redisPrefix
Section titled “redisPrefix”redisPrefix:
string
redisUrl
Section titled “redisUrl”redisUrl:
string
securityHeaders
Section titled “securityHeaders”securityHeaders: {
contentTypeOptions:string;csp:Record<string,string[]> |null;custom:Record<string,string> |null;enabled:boolean;frameOptions:"DENY"|"SAMEORIGIN";hsts?: {includeSubdomains:boolean;maxAge:number;preload:boolean; };permissionsPolicy:string;referrerPolicy:string;xssProtection:string; } |null
trustedProxies
Section titled “trustedProxies”trustedProxies:
string[]
trustedProxyDepth
Section titled “trustedProxyDepth”trustedProxyDepth:
number
trustXForwardedProto
Section titled “trustXForwardedProto”trustXForwardedProto:
boolean
whitelist
Section titled “whitelist”whitelist:
string[] |null
whitelistCountries
Section titled “whitelistCountries”whitelistCountries:
string[]
eventBus
Section titled “eventBus”
readonlyeventBus:unknown
Defined in: core/src/protocols/middleware.ts:12
geoIpHandler
Section titled “geoIpHandler”
readonlygeoIpHandler:GeoIPHandler|null
Defined in: core/src/protocols/middleware.ts:17
guardResponseFactory
Section titled “guardResponseFactory”
readonlyguardResponseFactory:GuardResponseFactory
Defined in: core/src/protocols/middleware.ts:18
lastCloudIpRefresh
Section titled “lastCloudIpRefresh”lastCloudIpRefresh:
number
Defined in: core/src/protocols/middleware.ts:10
logger
Section titled “logger”
readonlylogger:Logger
Defined in: core/src/protocols/middleware.ts:9
rateLimitHandler
Section titled “rateLimitHandler”
readonlyrateLimitHandler:unknown
Defined in: core/src/protocols/middleware.ts:15
responseFactory
Section titled “responseFactory”
readonlyresponseFactory:unknown
Defined in: core/src/protocols/middleware.ts:14
routeResolver
Section titled “routeResolver”
readonlyrouteResolver:unknown
Defined in: core/src/protocols/middleware.ts:13
suspiciousRequestCounts
Section titled “suspiciousRequestCounts”suspiciousRequestCounts:
Map<string,number>
Defined in: core/src/protocols/middleware.ts:11
Methods
Section titled “Methods”createErrorResponse()
Section titled “createErrorResponse()”createErrorResponse(
statusCode,defaultMessage):Promise<GuardResponse>
Defined in: core/src/protocols/middleware.ts:19
Parameters
Section titled “Parameters”statusCode
Section titled “statusCode”number
defaultMessage
Section titled “defaultMessage”string
Returns
Section titled “Returns”Promise<GuardResponse>
refreshCloudIpRanges()
Section titled “refreshCloudIpRanges()”refreshCloudIpRanges():
Promise<void>
Defined in: core/src/protocols/middleware.ts:20
Returns
Section titled “Returns”Promise<void>