@freshguard/freshguard-core 0.13.2 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -1
- package/README.md +74 -1
- package/SKILL.md +229 -0
- package/dist/cli/index.d.ts +13 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +74 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/connectors/azure-sql.d.ts +121 -0
- package/dist/connectors/azure-sql.d.ts.map +1 -0
- package/dist/connectors/azure-sql.js +489 -0
- package/dist/connectors/azure-sql.js.map +1 -0
- package/dist/connectors/base-connector.d.ts +139 -0
- package/dist/connectors/base-connector.d.ts.map +1 -1
- package/dist/connectors/base-connector.js +160 -3
- package/dist/connectors/base-connector.js.map +1 -1
- package/dist/connectors/bigquery.d.ts +100 -0
- package/dist/connectors/bigquery.d.ts.map +1 -1
- package/dist/connectors/bigquery.js +143 -2
- package/dist/connectors/bigquery.js.map +1 -1
- package/dist/connectors/duckdb.d.ts +96 -0
- package/dist/connectors/duckdb.d.ts.map +1 -1
- package/dist/connectors/duckdb.js +144 -7
- package/dist/connectors/duckdb.js.map +1 -1
- package/dist/connectors/index.d.ts +28 -0
- package/dist/connectors/index.d.ts.map +1 -1
- package/dist/connectors/index.js +28 -0
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/mssql.d.ts +119 -0
- package/dist/connectors/mssql.d.ts.map +1 -0
- package/dist/connectors/mssql.js +483 -0
- package/dist/connectors/mssql.js.map +1 -0
- package/dist/connectors/mysql.d.ts +85 -0
- package/dist/connectors/mysql.d.ts.map +1 -1
- package/dist/connectors/mysql.js +118 -3
- package/dist/connectors/mysql.js.map +1 -1
- package/dist/connectors/postgres.d.ts +85 -0
- package/dist/connectors/postgres.d.ts.map +1 -1
- package/dist/connectors/postgres.js +113 -6
- package/dist/connectors/postgres.js.map +1 -1
- package/dist/connectors/redshift.d.ts +90 -0
- package/dist/connectors/redshift.d.ts.map +1 -1
- package/dist/connectors/redshift.js +131 -7
- package/dist/connectors/redshift.js.map +1 -1
- package/dist/connectors/snowflake.d.ts +108 -0
- package/dist/connectors/snowflake.d.ts.map +1 -1
- package/dist/connectors/snowflake.js +137 -3
- package/dist/connectors/snowflake.js.map +1 -1
- package/dist/connectors/synapse.d.ts +123 -0
- package/dist/connectors/synapse.d.ts.map +1 -0
- package/dist/connectors/synapse.js +495 -0
- package/dist/connectors/synapse.js.map +1 -0
- package/dist/db/index.d.ts +25 -0
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +23 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/migrate.d.ts +23 -0
- package/dist/db/migrate.d.ts.map +1 -1
- package/dist/db/migrate.js +38 -0
- package/dist/db/migrate.js.map +1 -1
- package/dist/db/schema.d.ts +11 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +70 -0
- package/dist/db/schema.js.map +1 -1
- package/dist/errors/debug-factory.d.ts +38 -0
- package/dist/errors/debug-factory.d.ts.map +1 -1
- package/dist/errors/debug-factory.js +40 -0
- package/dist/errors/debug-factory.js.map +1 -1
- package/dist/errors/index.d.ts +59 -0
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +110 -7
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +32 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -1
- package/dist/index.js.map +1 -1
- package/dist/metadata/duckdb-storage.d.ts +3 -0
- package/dist/metadata/duckdb-storage.d.ts.map +1 -1
- package/dist/metadata/duckdb-storage.js +6 -0
- package/dist/metadata/duckdb-storage.js.map +1 -1
- package/dist/metadata/factory.d.ts +30 -0
- package/dist/metadata/factory.d.ts.map +1 -1
- package/dist/metadata/factory.js +31 -0
- package/dist/metadata/factory.js.map +1 -1
- package/dist/metadata/index.d.ts +26 -0
- package/dist/metadata/index.d.ts.map +1 -1
- package/dist/metadata/index.js +26 -0
- package/dist/metadata/index.js.map +1 -1
- package/dist/metadata/interface.d.ts +33 -0
- package/dist/metadata/interface.d.ts.map +1 -1
- package/dist/metadata/interface.js +3 -0
- package/dist/metadata/interface.js.map +1 -1
- package/dist/metadata/postgresql-storage.d.ts +3 -0
- package/dist/metadata/postgresql-storage.d.ts.map +1 -1
- package/dist/metadata/postgresql-storage.js +12 -2
- package/dist/metadata/postgresql-storage.js.map +1 -1
- package/dist/metadata/schema-config.d.ts +53 -0
- package/dist/metadata/schema-config.d.ts.map +1 -1
- package/dist/metadata/schema-config.js +64 -0
- package/dist/metadata/schema-config.js.map +1 -1
- package/dist/metadata/types.d.ts +3 -0
- package/dist/metadata/types.d.ts.map +1 -1
- package/dist/metadata/types.js +3 -0
- package/dist/metadata/types.js.map +1 -1
- package/dist/monitor/baseline-calculator.d.ts +56 -0
- package/dist/monitor/baseline-calculator.d.ts.map +1 -1
- package/dist/monitor/baseline-calculator.js +72 -0
- package/dist/monitor/baseline-calculator.js.map +1 -1
- package/dist/monitor/baseline-config.d.ts +77 -0
- package/dist/monitor/baseline-config.d.ts.map +1 -1
- package/dist/monitor/baseline-config.js +79 -1
- package/dist/monitor/baseline-config.js.map +1 -1
- package/dist/monitor/freshness.d.ts +40 -0
- package/dist/monitor/freshness.d.ts.map +1 -1
- package/dist/monitor/freshness.js +82 -3
- package/dist/monitor/freshness.js.map +1 -1
- package/dist/monitor/index.d.ts +29 -0
- package/dist/monitor/index.d.ts.map +1 -1
- package/dist/monitor/index.js +29 -0
- package/dist/monitor/index.js.map +1 -1
- package/dist/monitor/schema-baseline.d.ts +45 -0
- package/dist/monitor/schema-baseline.d.ts.map +1 -1
- package/dist/monitor/schema-baseline.js +63 -5
- package/dist/monitor/schema-baseline.js.map +1 -1
- package/dist/monitor/schema-changes.d.ts +45 -0
- package/dist/monitor/schema-changes.d.ts.map +1 -1
- package/dist/monitor/schema-changes.js +85 -0
- package/dist/monitor/schema-changes.js.map +1 -1
- package/dist/monitor/volume.d.ts +43 -0
- package/dist/monitor/volume.d.ts.map +1 -1
- package/dist/monitor/volume.js +89 -0
- package/dist/monitor/volume.js.map +1 -1
- package/dist/observability/logger.d.ts +91 -0
- package/dist/observability/logger.d.ts.map +1 -1
- package/dist/observability/logger.js +108 -0
- package/dist/observability/logger.js.map +1 -1
- package/dist/observability/metrics.d.ts +140 -0
- package/dist/observability/metrics.d.ts.map +1 -1
- package/dist/observability/metrics.js +184 -7
- package/dist/observability/metrics.js.map +1 -1
- package/dist/resilience/circuit-breaker.d.ts +112 -2
- package/dist/resilience/circuit-breaker.d.ts.map +1 -1
- package/dist/resilience/circuit-breaker.js +140 -6
- package/dist/resilience/circuit-breaker.js.map +1 -1
- package/dist/resilience/index.d.ts +9 -0
- package/dist/resilience/index.d.ts.map +1 -1
- package/dist/resilience/index.js +13 -0
- package/dist/resilience/index.js.map +1 -1
- package/dist/resilience/retry-policy.d.ts +105 -0
- package/dist/resilience/retry-policy.d.ts.map +1 -1
- package/dist/resilience/retry-policy.js +158 -7
- package/dist/resilience/retry-policy.js.map +1 -1
- package/dist/resilience/timeout-manager.d.ts +137 -0
- package/dist/resilience/timeout-manager.d.ts.map +1 -1
- package/dist/resilience/timeout-manager.js +151 -4
- package/dist/resilience/timeout-manager.js.map +1 -1
- package/dist/security/query-analyzer.d.ts +124 -0
- package/dist/security/query-analyzer.d.ts.map +1 -1
- package/dist/security/query-analyzer.js +150 -9
- package/dist/security/query-analyzer.js.map +1 -1
- package/dist/security/schema-cache.d.ts +152 -0
- package/dist/security/schema-cache.d.ts.map +1 -1
- package/dist/security/schema-cache.js +144 -12
- package/dist/security/schema-cache.js.map +1 -1
- package/dist/types/connector.d.ts +68 -1
- package/dist/types/connector.d.ts.map +1 -1
- package/dist/types/connector.js +38 -15
- package/dist/types/connector.js.map +1 -1
- package/dist/types/driver-results.d.ts +28 -0
- package/dist/types/driver-results.d.ts.map +1 -1
- package/dist/types/driver-results.js +12 -0
- package/dist/types/driver-results.js.map +1 -1
- package/dist/types.d.ts +113 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -1
- package/dist/validation/index.d.ts +8 -0
- package/dist/validation/index.d.ts.map +1 -1
- package/dist/validation/index.js +12 -0
- package/dist/validation/index.js.map +1 -1
- package/dist/validation/runtime-validator.d.ts +98 -0
- package/dist/validation/runtime-validator.d.ts.map +1 -1
- package/dist/validation/runtime-validator.js +114 -1
- package/dist/validation/runtime-validator.js.map +1 -1
- package/dist/validation/sanitizers.d.ts +59 -0
- package/dist/validation/sanitizers.d.ts.map +1 -1
- package/dist/validation/sanitizers.js +104 -20
- package/dist/validation/sanitizers.js.map +1 -1
- package/dist/validation/schemas.d.ts +73 -0
- package/dist/validation/schemas.d.ts.map +1 -1
- package/dist/validation/schemas.js +132 -5
- package/dist/validation/schemas.js.map +1 -1
- package/dist/validators/index.d.ts +54 -0
- package/dist/validators/index.d.ts.map +1 -1
- package/dist/validators/index.js +93 -2
- package/dist/validators/index.js.map +1 -1
- package/package.json +6 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure-sql.js","sourceRoot":"","sources":["../../src/connectors/azure-sql.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base connector class with built-in security validation and observability
|
|
3
|
+
*
|
|
4
|
+
* All database connectors must extend this class to ensure consistent
|
|
5
|
+
* security measures including query validation, timeouts, error sanitization,
|
|
6
|
+
* structured logging, and metrics collection.
|
|
7
|
+
*
|
|
8
|
+
* @license MIT
|
|
9
|
+
*/
|
|
1
10
|
import type { Connector, ConnectorConfig, TableSchema, SecurityConfig } from '../types/connector.js';
|
|
2
11
|
import { type QueryResultRow } from '../types/driver-results.js';
|
|
3
12
|
import { DebugErrorFactory } from '../errors/debug-factory.js';
|
|
@@ -8,6 +17,18 @@ import type { MetricsCollector } from '../observability/metrics.js';
|
|
|
8
17
|
import type { QueryComplexityAnalyzer } from '../security/query-analyzer.js';
|
|
9
18
|
import { type TableMetadata } from '../security/query-analyzer.js';
|
|
10
19
|
import type { SchemaCache } from '../security/schema-cache.js';
|
|
20
|
+
/**
|
|
21
|
+
* Abstract base connector with security and observability built-in
|
|
22
|
+
*
|
|
23
|
+
* Provides:
|
|
24
|
+
* - SQL injection prevention
|
|
25
|
+
* - Query timeouts
|
|
26
|
+
* - Connection validation
|
|
27
|
+
* - Error sanitization
|
|
28
|
+
* - Read-only query patterns
|
|
29
|
+
* - Structured logging
|
|
30
|
+
* - Metrics collection
|
|
31
|
+
*/
|
|
11
32
|
export declare abstract class BaseConnector implements Connector {
|
|
12
33
|
protected config: ConnectorConfig;
|
|
13
34
|
protected readonly connectionTimeout: number;
|
|
@@ -23,41 +44,159 @@ export declare abstract class BaseConnector implements Connector {
|
|
|
23
44
|
private readonly allowedPatterns;
|
|
24
45
|
private readonly blockedKeywords;
|
|
25
46
|
constructor(config: ConnectorConfig, securityConfig?: Partial<SecurityConfig>);
|
|
47
|
+
/**
|
|
48
|
+
* Validate connector configuration for security
|
|
49
|
+
*/
|
|
26
50
|
private validateConfig;
|
|
51
|
+
/**
|
|
52
|
+
* Validate SQL query against security rules with enhanced analysis
|
|
53
|
+
*
|
|
54
|
+
* Combines traditional pattern matching with advanced query complexity analysis
|
|
55
|
+
*/
|
|
27
56
|
protected validateQuery(sql: string, tableNames?: string[]): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Traditional query validation for backward compatibility
|
|
59
|
+
*/
|
|
28
60
|
private validateQueryTraditional;
|
|
61
|
+
/**
|
|
62
|
+
* Enhanced query validation using complexity analyzer
|
|
63
|
+
*/
|
|
29
64
|
private validateQueryWithAnalyzer;
|
|
65
|
+
/**
|
|
66
|
+
* Get table metadata for query analysis
|
|
67
|
+
*/
|
|
30
68
|
private getTableMetadataForAnalysis;
|
|
69
|
+
/**
|
|
70
|
+
* Convert cached schema to table metadata format
|
|
71
|
+
*/
|
|
31
72
|
private convertCachedToTableMetadata;
|
|
73
|
+
/**
|
|
74
|
+
* Get fresh table metadata (to be overridden by specific connectors)
|
|
75
|
+
*/
|
|
32
76
|
protected getTableMetadataFresh(tableName: string): Promise<TableMetadata | null>;
|
|
77
|
+
/**
|
|
78
|
+
* Cache table metadata
|
|
79
|
+
*/
|
|
33
80
|
private cacheTableMetadata;
|
|
81
|
+
/**
|
|
82
|
+
* Log query analysis results
|
|
83
|
+
*/
|
|
34
84
|
private logQueryAnalysis;
|
|
85
|
+
/**
|
|
86
|
+
* Get reason why query was blocked
|
|
87
|
+
*/
|
|
35
88
|
private getBlockingReason;
|
|
89
|
+
/**
|
|
90
|
+
* Escape SQL identifiers to prevent injection
|
|
91
|
+
*/
|
|
36
92
|
protected escapeIdentifier(identifier: string): string;
|
|
93
|
+
/**
|
|
94
|
+
* Execute function with timeout protection
|
|
95
|
+
*/
|
|
37
96
|
protected executeWithTimeout<T>(operation: () => Promise<T>, timeoutMs: number): Promise<T>;
|
|
97
|
+
/**
|
|
98
|
+
* Sanitize error messages to prevent information leakage
|
|
99
|
+
*/
|
|
38
100
|
protected sanitizeError(error: unknown): string;
|
|
101
|
+
/**
|
|
102
|
+
* Get row count for a table using parameterized query
|
|
103
|
+
*/
|
|
39
104
|
getRowCount(table: string): Promise<number>;
|
|
105
|
+
/**
|
|
106
|
+
* Internal row count method with optional validation
|
|
107
|
+
*/
|
|
40
108
|
private getRowCountInternal;
|
|
109
|
+
/**
|
|
110
|
+
* Get maximum timestamp value from a column
|
|
111
|
+
*/
|
|
41
112
|
getMaxTimestamp(table: string, column: string): Promise<Date | null>;
|
|
113
|
+
/**
|
|
114
|
+
* Internal max timestamp method with optional validation
|
|
115
|
+
*/
|
|
42
116
|
private getMaxTimestampInternal;
|
|
117
|
+
/**
|
|
118
|
+
* Get minimum timestamp value from a column
|
|
119
|
+
*/
|
|
43
120
|
getMinTimestamp(table: string, column: string): Promise<Date | null>;
|
|
121
|
+
/**
|
|
122
|
+
* Internal min timestamp method with optional validation
|
|
123
|
+
*/
|
|
44
124
|
private getMinTimestampInternal;
|
|
125
|
+
/**
|
|
126
|
+
* Get last modified timestamp for a table
|
|
127
|
+
* Implementation varies by database type
|
|
128
|
+
*/
|
|
45
129
|
getLastModified(_table: string): Promise<Date | null>;
|
|
130
|
+
/**
|
|
131
|
+
* Validate that query results don't exceed max rows limit
|
|
132
|
+
*/
|
|
46
133
|
protected validateResultSize(results: QueryResultRow[]): void;
|
|
134
|
+
/**
|
|
135
|
+
* Helper method for specific connectors to log operations with consistent format
|
|
136
|
+
*/
|
|
47
137
|
protected logOperation(operation: string, context: LogContext): void;
|
|
138
|
+
/**
|
|
139
|
+
* Helper method for specific connectors to log errors with consistent format
|
|
140
|
+
*/
|
|
48
141
|
protected logError(operation: string, error: Error, context?: LogContext): void;
|
|
142
|
+
/**
|
|
143
|
+
* Get schema cache statistics
|
|
144
|
+
*/
|
|
49
145
|
protected getSchemaCacheStats(): ReturnType<SchemaCache['getStats']>;
|
|
146
|
+
/**
|
|
147
|
+
* Clear schema cache for testing or maintenance
|
|
148
|
+
*/
|
|
50
149
|
protected clearSchemaCache(): void;
|
|
150
|
+
/**
|
|
151
|
+
* Get query analyzer configuration
|
|
152
|
+
*/
|
|
51
153
|
protected getQueryAnalyzerConfig(): ReturnType<QueryComplexityAnalyzer['getConfig']>;
|
|
154
|
+
/**
|
|
155
|
+
* Cleanup resources (should be called by subclasses in their close method)
|
|
156
|
+
*/
|
|
52
157
|
protected cleanup(): void;
|
|
158
|
+
/**
|
|
159
|
+
* Execute a validated SQL query
|
|
160
|
+
* Subclasses implement this with their specific database driver
|
|
161
|
+
*/
|
|
53
162
|
protected abstract executeQuery(sql: string): Promise<QueryResultRow[]>;
|
|
163
|
+
/**
|
|
164
|
+
* Execute a parameterized SQL query (recommended for security)
|
|
165
|
+
* Subclasses should override this to use proper prepared statements
|
|
166
|
+
*/
|
|
54
167
|
protected executeParameterizedQuery(sql: string, parameters?: unknown[]): Promise<QueryResultRow[]>;
|
|
168
|
+
/**
|
|
169
|
+
* Test database connection with optional debug configuration
|
|
170
|
+
* Subclasses implement with database-specific connection test
|
|
171
|
+
* @param debugConfig Optional debug configuration for enhanced error reporting
|
|
172
|
+
*/
|
|
55
173
|
abstract testConnection(debugConfig?: DebugConfig): Promise<boolean>;
|
|
174
|
+
/**
|
|
175
|
+
* Helper method for subclasses to create debug-enabled error factory
|
|
176
|
+
*/
|
|
56
177
|
protected createDebugErrorFactory(debugConfig?: DebugConfig): DebugErrorFactory;
|
|
178
|
+
/**
|
|
179
|
+
* Helper method for subclasses to log debug information
|
|
180
|
+
*/
|
|
57
181
|
protected logDebugInfo(debugConfig: DebugConfig | undefined, debugId: string, operation: string, context: Record<string, unknown>): void;
|
|
182
|
+
/**
|
|
183
|
+
* Helper method for subclasses to log debug errors
|
|
184
|
+
*/
|
|
58
185
|
protected logDebugError(debugConfig: DebugConfig | undefined, debugId: string, operation: string, context: Record<string, unknown>): void;
|
|
186
|
+
/**
|
|
187
|
+
* List all tables in the database
|
|
188
|
+
* Subclasses implement with database-specific table listing
|
|
189
|
+
*/
|
|
59
190
|
abstract listTables(): Promise<string[]>;
|
|
191
|
+
/**
|
|
192
|
+
* Get table schema information
|
|
193
|
+
* Subclasses implement with database-specific schema queries
|
|
194
|
+
*/
|
|
60
195
|
abstract getTableSchema(table: string): Promise<TableSchema>;
|
|
196
|
+
/**
|
|
197
|
+
* Close the database connection
|
|
198
|
+
* Subclasses implement with database-specific cleanup
|
|
199
|
+
*/
|
|
61
200
|
abstract close(): Promise<void>;
|
|
62
201
|
}
|
|
63
202
|
//# sourceMappingURL=base-connector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-connector.d.ts","sourceRoot":"","sources":["../../src/connectors/base-connector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base-connector.d.ts","sourceRoot":"","sources":["../../src/connectors/base-connector.ts"],"names":[],"mappings":"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"}
|