@blokjs/runner 0.6.20 → 0.7.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/dist/Blok.d.ts +2 -0
- package/dist/Blok.js +42 -110
- package/dist/Blok.js.map +1 -1
- package/dist/DefaultLogger.d.ts +13 -0
- package/dist/DefaultLogger.js +25 -0
- package/dist/DefaultLogger.js.map +1 -1
- package/dist/RunnerSteps.d.ts +23 -0
- package/dist/RunnerSteps.js +128 -87
- package/dist/RunnerSteps.js.map +1 -1
- package/dist/SubworkflowNode.js +19 -0
- package/dist/SubworkflowNode.js.map +1 -1
- package/dist/TriggerBase.d.ts +12 -0
- package/dist/TriggerBase.js +216 -181
- package/dist/TriggerBase.js.map +1 -1
- package/dist/adapters/grpc/GrpcRuntimeAdapter.d.ts +9 -0
- package/dist/adapters/grpc/GrpcRuntimeAdapter.js +76 -6
- package/dist/adapters/grpc/GrpcRuntimeAdapter.js.map +1 -1
- package/dist/index.d.ts +4 -39
- package/dist/index.js +7 -32
- package/dist/index.js.map +1 -1
- package/dist/monitoring/JanitorMetrics.d.ts +3 -0
- package/dist/monitoring/JanitorMetrics.js +11 -0
- package/dist/monitoring/JanitorMetrics.js.map +1 -1
- package/dist/monitoring/ProcessErrorMetrics.d.ts +32 -0
- package/dist/monitoring/ProcessErrorMetrics.js +43 -0
- package/dist/monitoring/ProcessErrorMetrics.js.map +1 -0
- package/dist/monitoring/PrometheusMetricsBridge.d.ts +7 -0
- package/dist/monitoring/PrometheusMetricsBridge.js +8 -2
- package/dist/monitoring/PrometheusMetricsBridge.js.map +1 -1
- package/dist/monitoring/SubworkflowMetrics.d.ts +25 -0
- package/dist/monitoring/SubworkflowMetrics.js +38 -0
- package/dist/monitoring/SubworkflowMetrics.js.map +1 -0
- package/dist/observability/ErrorSink.d.ts +23 -0
- package/dist/observability/ErrorSink.js +32 -0
- package/dist/observability/ErrorSink.js.map +1 -0
- package/dist/observability/SentryIntegration.d.ts +9 -0
- package/dist/observability/SentryIntegration.js +31 -0
- package/dist/observability/SentryIntegration.js.map +1 -0
- package/dist/scheduling/DebounceCoordinator.d.ts +7 -53
- package/dist/scheduling/DebounceCoordinator.js +8 -207
- package/dist/scheduling/DebounceCoordinator.js.map +1 -1
- package/dist/tracing/InMemoryRunStore.d.ts +5 -1
- package/dist/tracing/InMemoryRunStore.js +14 -0
- package/dist/tracing/InMemoryRunStore.js.map +1 -1
- package/dist/tracing/Janitor.js +3 -0
- package/dist/tracing/Janitor.js.map +1 -1
- package/dist/tracing/PostgresRunStore.d.ts +4 -1
- package/dist/tracing/PostgresRunStore.js +73 -3
- package/dist/tracing/PostgresRunStore.js.map +1 -1
- package/dist/tracing/RunStore.d.ts +17 -1
- package/dist/tracing/RunTracker.d.ts +13 -34
- package/dist/tracing/RunTracker.js +62 -32
- package/dist/tracing/RunTracker.js.map +1 -1
- package/dist/tracing/SqliteRunStore.d.ts +4 -1
- package/dist/tracing/SqliteRunStore.js +60 -0
- package/dist/tracing/SqliteRunStore.js.map +1 -1
- package/dist/tracing/TraceRouter.d.ts +13 -0
- package/dist/tracing/TraceRouter.js +43 -11
- package/dist/tracing/TraceRouter.js.map +1 -1
- package/dist/tracing/TracingLogger.js +22 -0
- package/dist/tracing/TracingLogger.js.map +1 -1
- package/dist/tracing/createStore.js +51 -22
- package/dist/tracing/createStore.js.map +1 -1
- package/dist/tracing/types.d.ts +22 -0
- package/dist/types/GlobalOptions.d.ts +5 -7
- package/dist/workflow/WorkflowNormalizer.js +63 -0
- package/dist/workflow/WorkflowNormalizer.js.map +1 -1
- package/package.json +7 -4
- package/dist/cache/NodeResultCache.d.ts +0 -286
- package/dist/cache/NodeResultCache.js +0 -506
- package/dist/cache/NodeResultCache.js.map +0 -1
- package/dist/cache/index.d.ts +0 -1
- package/dist/cache/index.js +0 -2
- package/dist/cache/index.js.map +0 -1
- package/dist/concurrency/ConcurrencyBackend.d.ts +0 -61
- package/dist/concurrency/ConcurrencyBackend.js +0 -20
- package/dist/concurrency/ConcurrencyBackend.js.map +0 -1
- package/dist/concurrency/NatsKvConcurrencyBackend.d.ts +0 -64
- package/dist/concurrency/NatsKvConcurrencyBackend.js +0 -310
- package/dist/concurrency/NatsKvConcurrencyBackend.js.map +0 -1
- package/dist/concurrency/RedisConcurrencyBackend.d.ts +0 -64
- package/dist/concurrency/RedisConcurrencyBackend.js +0 -374
- package/dist/concurrency/RedisConcurrencyBackend.js.map +0 -1
- package/dist/concurrency/createConcurrencyBackend.d.ts +0 -24
- package/dist/concurrency/createConcurrencyBackend.js +0 -38
- package/dist/concurrency/createConcurrencyBackend.js.map +0 -1
- package/dist/graphql/GraphQLSchemaGenerator.d.ts +0 -129
- package/dist/graphql/GraphQLSchemaGenerator.js +0 -425
- package/dist/graphql/GraphQLSchemaGenerator.js.map +0 -1
- package/dist/integrations/APMIntegration.d.ts +0 -141
- package/dist/integrations/APMIntegration.js +0 -212
- package/dist/integrations/APMIntegration.js.map +0 -1
- package/dist/integrations/AzureMonitorIntegration.d.ts +0 -118
- package/dist/integrations/AzureMonitorIntegration.js +0 -254
- package/dist/integrations/AzureMonitorIntegration.js.map +0 -1
- package/dist/integrations/CloudWatchIntegration.d.ts +0 -135
- package/dist/integrations/CloudWatchIntegration.js +0 -293
- package/dist/integrations/CloudWatchIntegration.js.map +0 -1
- package/dist/integrations/SentryIntegration.d.ts +0 -153
- package/dist/integrations/SentryIntegration.js +0 -200
- package/dist/integrations/SentryIntegration.js.map +0 -1
- package/dist/integrations/index.d.ts +0 -19
- package/dist/integrations/index.js +0 -16
- package/dist/integrations/index.js.map +0 -1
- package/dist/marketplace/RuntimeAutoScaler.d.ts +0 -148
- package/dist/marketplace/RuntimeAutoScaler.js +0 -366
- package/dist/marketplace/RuntimeAutoScaler.js.map +0 -1
- package/dist/marketplace/RuntimeCatalog.d.ts +0 -180
- package/dist/marketplace/RuntimeCatalog.js +0 -339
- package/dist/marketplace/RuntimeCatalog.js.map +0 -1
- package/dist/marketplace/RuntimeDiscovery.d.ts +0 -86
- package/dist/marketplace/RuntimeDiscovery.js +0 -231
- package/dist/marketplace/RuntimeDiscovery.js.map +0 -1
- package/dist/marketplace/RuntimeHealthMonitor.d.ts +0 -100
- package/dist/marketplace/RuntimeHealthMonitor.js +0 -241
- package/dist/marketplace/RuntimeHealthMonitor.js.map +0 -1
- package/dist/marketplace/RuntimeMetricsDashboard.d.ts +0 -113
- package/dist/marketplace/RuntimeMetricsDashboard.js +0 -293
- package/dist/marketplace/RuntimeMetricsDashboard.js.map +0 -1
- package/dist/openapi/OpenAPIGenerator.d.ts +0 -192
- package/dist/openapi/OpenAPIGenerator.js +0 -378
- package/dist/openapi/OpenAPIGenerator.js.map +0 -1
- package/dist/openapi/index.d.ts +0 -20
- package/dist/openapi/index.js +0 -20
- package/dist/openapi/index.js.map +0 -1
- package/dist/scheduling/DebounceBackend.d.ts +0 -108
- package/dist/scheduling/DebounceBackend.js +0 -23
- package/dist/scheduling/DebounceBackend.js.map +0 -1
- package/dist/scheduling/NatsKvDebounceBackend.d.ts +0 -53
- package/dist/scheduling/NatsKvDebounceBackend.js +0 -334
- package/dist/scheduling/NatsKvDebounceBackend.js.map +0 -1
- package/dist/scheduling/RedisDebounceBackend.d.ts +0 -49
- package/dist/scheduling/RedisDebounceBackend.js +0 -356
- package/dist/scheduling/RedisDebounceBackend.js.map +0 -1
- package/dist/scheduling/createDebounceBackend.d.ts +0 -25
- package/dist/scheduling/createDebounceBackend.js +0 -39
- package/dist/scheduling/createDebounceBackend.js.map +0 -1
- package/dist/security/ABAC.d.ts +0 -224
- package/dist/security/ABAC.js +0 -380
- package/dist/security/ABAC.js.map +0 -1
- package/dist/security/AuditLogger.d.ts +0 -242
- package/dist/security/AuditLogger.js +0 -317
- package/dist/security/AuditLogger.js.map +0 -1
- package/dist/security/AuthMiddleware.d.ts +0 -162
- package/dist/security/AuthMiddleware.js +0 -289
- package/dist/security/AuthMiddleware.js.map +0 -1
- package/dist/security/EncryptionAtRest.d.ts +0 -206
- package/dist/security/EncryptionAtRest.js +0 -236
- package/dist/security/EncryptionAtRest.js.map +0 -1
- package/dist/security/OAuthProvider.d.ts +0 -334
- package/dist/security/OAuthProvider.js +0 -719
- package/dist/security/OAuthProvider.js.map +0 -1
- package/dist/security/PIIDetector.d.ts +0 -233
- package/dist/security/PIIDetector.js +0 -354
- package/dist/security/PIIDetector.js.map +0 -1
- package/dist/security/RBAC.d.ts +0 -143
- package/dist/security/RBAC.js +0 -285
- package/dist/security/RBAC.js.map +0 -1
- package/dist/security/SecretManager.d.ts +0 -652
- package/dist/security/SecretManager.js +0 -1147
- package/dist/security/SecretManager.js.map +0 -1
- package/dist/security/TLSConfig.d.ts +0 -305
- package/dist/security/TLSConfig.js +0 -550
- package/dist/security/TLSConfig.js.map +0 -1
- package/dist/security/index.d.ts +0 -81
- package/dist/security/index.js +0 -82
- package/dist/security/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SecretManager.js","sourceRoot":"","sources":["../../src/security/SecretManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,305 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* TLS/SSL Configuration for Blok Framework
|
|
3
|
-
*
|
|
4
|
-
* Manages TLS certificate and cipher configuration for secure communications:
|
|
5
|
-
* - Server-side TLS options for Node.js HTTPS/TLS servers
|
|
6
|
-
* - Client-side TLS options for outbound connections
|
|
7
|
-
* - Certificate validation (expiry, chain integrity, cipher strength)
|
|
8
|
-
* - Certificate info parsing (subject, issuer, serial, fingerprint)
|
|
9
|
-
* - Mutual TLS (mTLS) support with client certificate verification
|
|
10
|
-
* - Self-signed certificate generation for development and testing
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* import { TLSConfig } from "@blokjs/runner";
|
|
15
|
-
*
|
|
16
|
-
* // Production TLS setup
|
|
17
|
-
* const tls = new TLSConfig({
|
|
18
|
-
* certPath: "/etc/ssl/certs/server.crt",
|
|
19
|
-
* keyPath: "/etc/ssl/private/server.key",
|
|
20
|
-
* caPath: "/etc/ssl/certs/ca.crt",
|
|
21
|
-
* minVersion: "TLSv1.2",
|
|
22
|
-
* mutualTLS: { enabled: true, caPath: "/etc/ssl/certs/client-ca.crt" },
|
|
23
|
-
* });
|
|
24
|
-
*
|
|
25
|
-
* // Use with Node.js HTTPS server
|
|
26
|
-
* const serverOpts = tls.createServerOptions();
|
|
27
|
-
* const server = https.createServer(serverOpts, app);
|
|
28
|
-
*
|
|
29
|
-
* // Validate certificates
|
|
30
|
-
* const validation = tls.validate();
|
|
31
|
-
* if (!validation.valid) {
|
|
32
|
-
* console.error("TLS validation failed:", validation.errors);
|
|
33
|
-
* }
|
|
34
|
-
*
|
|
35
|
-
* // Generate self-signed cert for development
|
|
36
|
-
* const { cert, key } = TLSConfig.generateSelfSigned({
|
|
37
|
-
* commonName: "localhost",
|
|
38
|
-
* days: 365,
|
|
39
|
-
* });
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
import type { ConnectionOptions, TlsOptions } from "node:tls";
|
|
43
|
-
/**
|
|
44
|
-
* Mutual TLS (mTLS) configuration.
|
|
45
|
-
*/
|
|
46
|
-
export interface MutualTLSOptions {
|
|
47
|
-
/** Whether mTLS is enabled */
|
|
48
|
-
enabled: boolean;
|
|
49
|
-
/** Path to the CA certificate used to verify client certificates */
|
|
50
|
-
caPath?: string;
|
|
51
|
-
/** PEM-encoded CA certificate (alternative to caPath) */
|
|
52
|
-
ca?: string;
|
|
53
|
-
/**
|
|
54
|
-
* Whether to reject connections from clients without a valid certificate.
|
|
55
|
-
* @default true
|
|
56
|
-
*/
|
|
57
|
-
rejectUnauthorized?: boolean;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Configuration options for TLS/SSL setup.
|
|
61
|
-
*/
|
|
62
|
-
export interface TLSConfigOptions {
|
|
63
|
-
/** Path to the PEM-encoded server certificate */
|
|
64
|
-
certPath?: string;
|
|
65
|
-
/** PEM-encoded server certificate (alternative to certPath) */
|
|
66
|
-
cert?: string;
|
|
67
|
-
/** Path to the PEM-encoded private key */
|
|
68
|
-
keyPath?: string;
|
|
69
|
-
/** PEM-encoded private key (alternative to keyPath) */
|
|
70
|
-
key?: string;
|
|
71
|
-
/** Passphrase for the private key, if encrypted */
|
|
72
|
-
keyPassphrase?: string;
|
|
73
|
-
/** Path to the PEM-encoded CA certificate (certificate chain) */
|
|
74
|
-
caPath?: string;
|
|
75
|
-
/** PEM-encoded CA certificate (alternative to caPath) */
|
|
76
|
-
ca?: string;
|
|
77
|
-
/**
|
|
78
|
-
* Minimum TLS protocol version to accept.
|
|
79
|
-
* @default "TLSv1.2"
|
|
80
|
-
*/
|
|
81
|
-
minVersion?: "TLSv1.2" | "TLSv1.3";
|
|
82
|
-
/**
|
|
83
|
-
* Maximum TLS protocol version to accept.
|
|
84
|
-
* @default "TLSv1.3"
|
|
85
|
-
*/
|
|
86
|
-
maxVersion?: "TLSv1.2" | "TLSv1.3";
|
|
87
|
-
/**
|
|
88
|
-
* Colon-separated list of allowed cipher suites.
|
|
89
|
-
* If not set, Node.js defaults are used.
|
|
90
|
-
*/
|
|
91
|
-
ciphers?: string;
|
|
92
|
-
/** Mutual TLS configuration */
|
|
93
|
-
mutualTLS?: MutualTLSOptions;
|
|
94
|
-
/**
|
|
95
|
-
* Whether to reject connections with invalid certificates.
|
|
96
|
-
* @default true
|
|
97
|
-
*/
|
|
98
|
-
rejectUnauthorized?: boolean;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Result of TLS configuration validation.
|
|
102
|
-
*/
|
|
103
|
-
export interface TLSValidationResult {
|
|
104
|
-
/** Whether the configuration is valid */
|
|
105
|
-
valid: boolean;
|
|
106
|
-
/** Blocking errors that prevent TLS from functioning */
|
|
107
|
-
errors: string[];
|
|
108
|
-
/** Non-blocking warnings (e.g. upcoming expiry) */
|
|
109
|
-
warnings: string[];
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Parsed certificate information.
|
|
113
|
-
*/
|
|
114
|
-
export interface CertificateInfo {
|
|
115
|
-
/** Certificate subject (e.g. "CN=example.com") */
|
|
116
|
-
subject: string;
|
|
117
|
-
/** Certificate issuer (e.g. "CN=My CA") */
|
|
118
|
-
issuer: string;
|
|
119
|
-
/** Certificate validity start date */
|
|
120
|
-
validFrom: Date;
|
|
121
|
-
/** Certificate validity end date */
|
|
122
|
-
validTo: Date;
|
|
123
|
-
/** Certificate serial number (hex string) */
|
|
124
|
-
serialNumber: string;
|
|
125
|
-
/** SHA-256 fingerprint of the certificate */
|
|
126
|
-
fingerprint: string;
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Options for generating a self-signed certificate.
|
|
130
|
-
*/
|
|
131
|
-
export interface SelfSignedOptions {
|
|
132
|
-
/** Common Name (CN) for the certificate subject */
|
|
133
|
-
commonName: string;
|
|
134
|
-
/**
|
|
135
|
-
* Number of days the certificate is valid for.
|
|
136
|
-
* @default 365
|
|
137
|
-
*/
|
|
138
|
-
days?: number;
|
|
139
|
-
/**
|
|
140
|
-
* RSA key size in bits.
|
|
141
|
-
* @default 2048
|
|
142
|
-
*/
|
|
143
|
-
bits?: number;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Manages TLS/SSL configuration for secure communications.
|
|
147
|
-
*
|
|
148
|
-
* Supports server-side and client-side TLS setup, certificate inspection,
|
|
149
|
-
* validation, mutual TLS, and self-signed certificate generation for
|
|
150
|
-
* development environments.
|
|
151
|
-
*
|
|
152
|
-
* @example
|
|
153
|
-
* ```typescript
|
|
154
|
-
* const tls = new TLSConfig({
|
|
155
|
-
* certPath: "./certs/server.crt",
|
|
156
|
-
* keyPath: "./certs/server.key",
|
|
157
|
-
* });
|
|
158
|
-
*
|
|
159
|
-
* if (tls.isExpiringSoon(30)) {
|
|
160
|
-
* console.warn("Certificate expires within 30 days!");
|
|
161
|
-
* }
|
|
162
|
-
* ```
|
|
163
|
-
*/
|
|
164
|
-
export declare class TLSConfig {
|
|
165
|
-
private readonly options;
|
|
166
|
-
private cachedCert;
|
|
167
|
-
private cachedKey;
|
|
168
|
-
private cachedCa;
|
|
169
|
-
/**
|
|
170
|
-
* Create a new TLSConfig instance.
|
|
171
|
-
*
|
|
172
|
-
* @param options - TLS configuration options
|
|
173
|
-
*/
|
|
174
|
-
constructor(options: TLSConfigOptions);
|
|
175
|
-
/**
|
|
176
|
-
* Create TLS options suitable for a Node.js HTTPS or TLS server.
|
|
177
|
-
*
|
|
178
|
-
* The returned object can be passed directly to
|
|
179
|
-
* `https.createServer(options)` or `tls.createServer(options)`.
|
|
180
|
-
*
|
|
181
|
-
* @returns TLS options for server-side use
|
|
182
|
-
* @throws {Error} If required certificate or key cannot be loaded
|
|
183
|
-
*
|
|
184
|
-
* @example
|
|
185
|
-
* ```typescript
|
|
186
|
-
* const serverOpts = tlsConfig.createServerOptions();
|
|
187
|
-
* const server = https.createServer(serverOpts, requestHandler);
|
|
188
|
-
* ```
|
|
189
|
-
*/
|
|
190
|
-
createServerOptions(): TlsOptions;
|
|
191
|
-
/**
|
|
192
|
-
* Create TLS options suitable for outbound client connections.
|
|
193
|
-
*
|
|
194
|
-
* The returned object can be passed to `tls.connect(options)` or used
|
|
195
|
-
* with HTTPS client libraries.
|
|
196
|
-
*
|
|
197
|
-
* @returns TLS connection options for client-side use
|
|
198
|
-
*
|
|
199
|
-
* @example
|
|
200
|
-
* ```typescript
|
|
201
|
-
* const clientOpts = tlsConfig.createClientOptions();
|
|
202
|
-
* const socket = tls.connect(443, "example.com", clientOpts);
|
|
203
|
-
* ```
|
|
204
|
-
*/
|
|
205
|
-
createClientOptions(): ConnectionOptions;
|
|
206
|
-
/**
|
|
207
|
-
* Validate the current TLS configuration.
|
|
208
|
-
*
|
|
209
|
-
* Checks for:
|
|
210
|
-
* - Certificate and key file existence
|
|
211
|
-
* - Certificate parsing validity
|
|
212
|
-
* - Certificate expiry (error if expired, warning if < 30 days)
|
|
213
|
-
* - Key/cert pair consistency
|
|
214
|
-
* - Mutual TLS CA availability
|
|
215
|
-
*
|
|
216
|
-
* @returns A {@link TLSValidationResult} with errors and warnings
|
|
217
|
-
*
|
|
218
|
-
* @example
|
|
219
|
-
* ```typescript
|
|
220
|
-
* const result = tlsConfig.validate();
|
|
221
|
-
* if (!result.valid) {
|
|
222
|
-
* result.errors.forEach(e => console.error(e));
|
|
223
|
-
* }
|
|
224
|
-
* ```
|
|
225
|
-
*/
|
|
226
|
-
validate(): TLSValidationResult;
|
|
227
|
-
/**
|
|
228
|
-
* Parse and return detailed information about the server certificate.
|
|
229
|
-
*
|
|
230
|
-
* @returns Parsed {@link CertificateInfo}
|
|
231
|
-
* @throws {Error} If no certificate is configured or parsing fails
|
|
232
|
-
*
|
|
233
|
-
* @example
|
|
234
|
-
* ```typescript
|
|
235
|
-
* const info = tlsConfig.getCertificateInfo();
|
|
236
|
-
* console.log(info.subject); // "CN=example.com"
|
|
237
|
-
* console.log(info.validTo); // Date object
|
|
238
|
-
* ```
|
|
239
|
-
*/
|
|
240
|
-
getCertificateInfo(): CertificateInfo;
|
|
241
|
-
/**
|
|
242
|
-
* Check whether the server certificate expires within a given number of
|
|
243
|
-
* days.
|
|
244
|
-
*
|
|
245
|
-
* @param days - Number of days to check against
|
|
246
|
-
* @returns True if the certificate expires within the specified number of days
|
|
247
|
-
* @throws {Error} If no certificate is configured
|
|
248
|
-
*
|
|
249
|
-
* @example
|
|
250
|
-
* ```typescript
|
|
251
|
-
* if (tlsConfig.isExpiringSoon(30)) {
|
|
252
|
-
* console.warn("Certificate expires within 30 days!");
|
|
253
|
-
* }
|
|
254
|
-
* ```
|
|
255
|
-
*/
|
|
256
|
-
isExpiringSoon(days: number): boolean;
|
|
257
|
-
/**
|
|
258
|
-
* Generate a self-signed certificate for development and testing.
|
|
259
|
-
*
|
|
260
|
-
* This is a static method that does not require a TLSConfig instance.
|
|
261
|
-
* The generated certificate uses RSA key pair and SHA-256 signing.
|
|
262
|
-
*
|
|
263
|
-
* **WARNING**: Self-signed certificates should NEVER be used in production.
|
|
264
|
-
*
|
|
265
|
-
* @param opts - Self-signed certificate generation options
|
|
266
|
-
* @returns Object containing PEM-encoded certificate and private key
|
|
267
|
-
*
|
|
268
|
-
* @example
|
|
269
|
-
* ```typescript
|
|
270
|
-
* const { cert, key } = TLSConfig.generateSelfSigned({
|
|
271
|
-
* commonName: "localhost",
|
|
272
|
-
* days: 30,
|
|
273
|
-
* bits: 2048,
|
|
274
|
-
* });
|
|
275
|
-
* ```
|
|
276
|
-
*/
|
|
277
|
-
static generateSelfSigned(opts: SelfSignedOptions): {
|
|
278
|
-
cert: string;
|
|
279
|
-
key: string;
|
|
280
|
-
};
|
|
281
|
-
/**
|
|
282
|
-
* Load the server certificate from file or inline PEM.
|
|
283
|
-
*
|
|
284
|
-
* @returns PEM string or undefined if not configured
|
|
285
|
-
*/
|
|
286
|
-
private loadCert;
|
|
287
|
-
/**
|
|
288
|
-
* Load the private key from file or inline PEM.
|
|
289
|
-
*
|
|
290
|
-
* @returns PEM string or undefined if not configured
|
|
291
|
-
*/
|
|
292
|
-
private loadKey;
|
|
293
|
-
/**
|
|
294
|
-
* Load the CA certificate from file or inline PEM.
|
|
295
|
-
*
|
|
296
|
-
* @returns PEM string or undefined if not configured
|
|
297
|
-
*/
|
|
298
|
-
private loadCA;
|
|
299
|
-
/**
|
|
300
|
-
* Load the mutual TLS CA certificate.
|
|
301
|
-
*
|
|
302
|
-
* @returns PEM string or undefined
|
|
303
|
-
*/
|
|
304
|
-
private loadMutualTLSCA;
|
|
305
|
-
}
|