samlesa 3.5.0 → 4.1.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.
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @file saml2-enhancements-integration.ts
3
+ * @desc SAML 2.0 增强功能集成 - 自动应用到绑定和元数据生成
4
+ */
5
+ import { AuthnContextClassRef, Consent } from './saml2-enhancements.js';
6
+ import type { AuthnRequestEnhancedConfig, ConditionsEnhancedConfig, SubjectConfirmationDataConfig, MetadataEnhancedConfig } from './types.js';
7
+ /**
8
+ * 将增强功能应用到 AuthnRequest
9
+ */
10
+ export declare function applyAuthnRequestEnhancements(rawSamlRequest: string, enhancements: AuthnRequestEnhancedConfig): string;
11
+ /**
12
+ * 将增强功能应用到 Conditions 元素
13
+ */
14
+ export declare function applyConditionsEnhancements(rawSamlResponse: string, enhancements: ConditionsEnhancedConfig): string;
15
+ /**
16
+ * 将增强功能应用到 SubjectConfirmationData 元素
17
+ */
18
+ export declare function applySubjectConfirmationEnhancements(rawSamlResponse: string, enhancements: SubjectConfirmationDataConfig): string;
19
+ /**
20
+ * 将增强功能应用到元数据
21
+ */
22
+ export declare function applyMetadataEnhancements(rawMetadata: string, enhancements: MetadataEnhancedConfig): string;
23
+ export { AuthnContextClassRef, Consent };
24
+ //# sourceMappingURL=saml2-enhancements-integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saml2-enhancements-integration.d.ts","sourceRoot":"","sources":["../../src/saml2-enhancements-integration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EASH,oBAAoB,EACpB,OAAO,EACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACR,0BAA0B,EAC1B,wBAAwB,EACxB,6BAA6B,EAC7B,sBAAsB,EACzB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,wBAAgB,6BAA6B,CACzC,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,0BAA0B,GACzC,MAAM,CAsCR;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACvC,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,wBAAwB,GACvC,MAAM,CAqBR;AAED;;GAEG;AACH,wBAAgB,oCAAoC,CAChD,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,6BAA6B,GAC5C,MAAM,CAmBR;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACrC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,sBAAsB,GACrC,MAAM,CAuBR;AAkDD,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,286 @@
1
+ /**
2
+ * @file saml2-enhancements.ts
3
+ * @desc SAML 2.0 增强功能实现 - 补充核心库中缺失的可选功能
4
+ *
5
+ * 根据 SAML 2.0 规范 (OASIS Standard, 2005-09) 实现以下功能:
6
+ * - Scoping 元素 (用于代理 SSO)
7
+ * - RequestedAuthnContext 完整支持
8
+ * - OneTimeUse 条件
9
+ * - ProxyRestriction 条件
10
+ * - SubjectConfirmation 的 Address/NotBefore 属性
11
+ * - Organization 和 ContactPerson 元数据
12
+ */
13
+ /**
14
+ * Scoping 元素配置 - 用于代理 SSO 场景
15
+ * @see SAML Core 2.0, Section 3.4.1
16
+ */
17
+ export interface ScopingConfig {
18
+ /** 代理计数限制 */
19
+ proxyCount?: number;
20
+ /** 请求者 ID 列表 */
21
+ requesterID?: string[];
22
+ /** IdP 列表 */
23
+ idpList?: IdpEntry[];
24
+ }
25
+ /**
26
+ * IdP 列表条目
27
+ */
28
+ export interface IdpEntry {
29
+ /** IdP 提供者 ID */
30
+ providerID: string;
31
+ /** IdP 名称 (可选) */
32
+ name?: string;
33
+ /** IdP 位置 (可选) */
34
+ loc?: string;
35
+ }
36
+ /**
37
+ * RequestedAuthnContext 配置
38
+ * @see SAML Core 2.0, Section 3.3.2.2
39
+ */
40
+ export interface RequestedAuthnContextConfig {
41
+ /** 比较方法: exact | minimum | maximum | better */
42
+ comparison?: 'exact' | 'minimum' | 'maximum' | 'better';
43
+ /** 认证上下文类引用 URI 列表 */
44
+ classRefs?: string[];
45
+ /** 认证上下文声明引用 (可选) */
46
+ declRefs?: string[];
47
+ }
48
+ /**
49
+ * OneTimeUse 条件配置
50
+ * @see SAML Core 2.0, Section 3.1.4.2
51
+ */
52
+ export interface OneTimeUseConfig {
53
+ /** 启用一次性使用条件 */
54
+ enabled: boolean;
55
+ }
56
+ /**
57
+ * ProxyRestriction 条件配置
58
+ * @see SAML Core 2.0, Section 3.1.4.3
59
+ */
60
+ export interface ProxyRestrictionConfig {
61
+ /** 代理计数限制 */
62
+ count?: number;
63
+ /** 受众列表 */
64
+ audience?: string[];
65
+ }
66
+ /**
67
+ * SubjectConfirmation 增强配置
68
+ * @see SAML Core 2.0, Section 3.2.1
69
+ */
70
+ export interface SubjectConfirmationDataConfig {
71
+ /** 客户端 IP 地址 (可选) */
72
+ address?: string;
73
+ /** 生效时间 (可选) */
74
+ notBefore?: string;
75
+ /** 过期时间 (必需) */
76
+ notOnOrAfter: string;
77
+ /** 接收者 (可选) */
78
+ recipient?: string;
79
+ /** 响应中的 ID (可选) */
80
+ inResponseTo?: string;
81
+ }
82
+ /**
83
+ * Organization 信息配置
84
+ * @see SAML Metadata 2.0, Section 2.3.4
85
+ */
86
+ export interface OrganizationConfig {
87
+ /** 组织名称 */
88
+ name: {
89
+ /** 语言代码 (如 'en', 'zh-CN') */
90
+ 'xml:lang'?: string;
91
+ /** 组织名称文本 */
92
+ value: string;
93
+ };
94
+ /** 组织显示名称 */
95
+ displayName?: {
96
+ 'xml:lang'?: string;
97
+ value: string;
98
+ };
99
+ /** 组织 URL */
100
+ url?: {
101
+ 'xml:lang'?: string;
102
+ value: string;
103
+ };
104
+ }
105
+ /**
106
+ * ContactPerson 信息配置
107
+ * @see SAML Metadata 2.0, Section 2.3.5
108
+ */
109
+ export interface ContactPersonConfig {
110
+ /** 联系人类型 */
111
+ contactType: 'technical' | 'support' | 'administrative' | 'billing' | 'other';
112
+ /** 公司名称 (可选) */
113
+ company?: string;
114
+ /** 名字 (可选) */
115
+ givenName?: string;
116
+ /** 姓氏 (可选) */
117
+ surName?: string;
118
+ /** 电子邮件 (可选) */
119
+ emailAddress?: string;
120
+ /** 电话号码 (可选) */
121
+ telephoneNumber?: string;
122
+ }
123
+ /**
124
+ * AuthnRequest 增强配置
125
+ */
126
+ export interface AuthnRequestEnhancedConfig {
127
+ /** Scoping 配置 */
128
+ scoping?: ScopingConfig;
129
+ /** RequestedAuthnContext 配置 */
130
+ requestedAuthnContext?: RequestedAuthnContextConfig;
131
+ /** 强制认证 */
132
+ forceAuthn?: boolean;
133
+ /** 被动认证 */
134
+ isPassive?: boolean;
135
+ /** 用户同意状态 */
136
+ consent?: string;
137
+ /** 属性消费服务索引 */
138
+ attributeConsumingServiceIndex?: number;
139
+ /** 提供者名称 */
140
+ providerName?: string;
141
+ }
142
+ /**
143
+ * Response 增强配置
144
+ */
145
+ export interface ResponseEnhancedConfig {
146
+ /** 用户同意状态 */
147
+ consent?: string;
148
+ }
149
+ /**
150
+ * Conditions 增强配置
151
+ */
152
+ export interface ConditionsEnhancedConfig {
153
+ /** OneTimeUse 配置 */
154
+ oneTimeUse?: OneTimeUseConfig;
155
+ /** ProxyRestriction 配置 */
156
+ proxyRestriction?: ProxyRestrictionConfig;
157
+ }
158
+ /**
159
+ * 构建 Scoping 元素
160
+ * @param config Scoping 配置
161
+ * @returns Scoping XML 元素
162
+ */
163
+ export declare function buildScoping(config: ScopingConfig): any;
164
+ /**
165
+ * 构建 RequestedAuthnContext 元素
166
+ * @param config RequestedAuthnContext 配置
167
+ * @returns RequestedAuthnContext XML 元素
168
+ */
169
+ export declare function buildRequestedAuthnContext(config: RequestedAuthnContextConfig): any;
170
+ /**
171
+ * 构建 OneTimeUse 元素
172
+ * @returns OneTimeUse XML 元素
173
+ */
174
+ export declare function buildOneTimeUse(): any;
175
+ /**
176
+ * 构建 ProxyRestriction 元素
177
+ * @param config ProxyRestriction 配置
178
+ * @returns ProxyRestriction XML 元素
179
+ */
180
+ export declare function buildProxyRestriction(config: ProxyRestrictionConfig): any;
181
+ /**
182
+ * 构建增强的 SubjectConfirmationData
183
+ * @param config SubjectConfirmationData 配置
184
+ * @returns SubjectConfirmationData XML 元素
185
+ */
186
+ export declare function buildSubjectConfirmationData(config: {
187
+ notOnOrAfter: string;
188
+ address?: string;
189
+ notBefore?: string;
190
+ recipient?: string;
191
+ inResponseTo?: string;
192
+ }): any;
193
+ /**
194
+ * 构建 Organization 元素
195
+ * @param config Organization 配置
196
+ * @returns Organization XML 元素
197
+ */
198
+ export declare function buildOrganization(config: OrganizationConfig): any;
199
+ /**
200
+ * 构建 ContactPerson 元素
201
+ * @param config ContactPerson 配置
202
+ * @returns ContactPerson XML 元素
203
+ */
204
+ export declare function buildContactPerson(config: ContactPersonConfig): any;
205
+ /**
206
+ * 构建增强的 AuthnRequest 内容
207
+ * @param baseAuthnRequest 基础 AuthnRequest XML 对象
208
+ * @param enhancedConfig 增强配置
209
+ * @returns 增强后的 AuthnRequest XML 对象
210
+ */
211
+ export declare function enhanceAuthnRequest(baseAuthnRequest: any, enhancedConfig: AuthnRequestEnhancedConfig): any;
212
+ /**
213
+ * 构建增强的 Conditions 内容
214
+ * @param baseConditions 基础 Conditions XML 对象
215
+ * @param enhancedConfig 增强配置
216
+ * @returns 增强后的 Conditions XML 对象
217
+ */
218
+ export declare function enhanceConditions(baseConditions: any, enhancedConfig: ConditionsEnhancedConfig): any;
219
+ /**
220
+ * 构建增强的 SubjectConfirmation
221
+ * @param baseSubjectConfirmation 基础 SubjectConfirmation XML 对象
222
+ * @param enhancedConfig 增强配置
223
+ * @returns 增强后的 SubjectConfirmation XML 对象
224
+ */
225
+ export declare function enhanceSubjectConfirmation(baseSubjectConfirmation: any, enhancedConfig: SubjectConfirmationDataConfig): any;
226
+ /**
227
+ * 将 XML 对象转换为字符串
228
+ * @param xmlObject XML 对象
229
+ * @returns XML 字符串
230
+ */
231
+ export declare function xmlToString(xmlObject: any): string;
232
+ /**
233
+ * 生成标准的 AuthnContextClassRef URI
234
+ */
235
+ export declare const AuthnContextClassRef: {
236
+ /** 未指定认证 */
237
+ readonly UNSPECIFIED: "urn:oasis:names:tc:SAML:2.0:ac:classes:Unspecified";
238
+ /** 用户名/密码 */
239
+ readonly PASSWORD: "urn:oasis:names:tc:SAML:2.0:ac:classes:Password";
240
+ /** 密码保护传输 */
241
+ readonly PASSWORD_PROTECTED_TRANSPORT: "urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport";
242
+ /** X.509 证书 */
243
+ readonly X509: "urn:oasis:names:tc:SAML:2.0:ac:classes:X509";
244
+ /** PGP */
245
+ readonly PGP: "urn:oasis:names:tc:SAML:2.0:ac:classes:PGP";
246
+ /** SPKI */
247
+ readonly SPKI: "urn:oasis:names:tc:SAML:2.0:ac:classes:SPKI";
248
+ /** XML 数字签名 */
249
+ readonly XMLDSIG: "urn:oasis:names:tc:SAML:2.0:ac:classes:XMLDSig";
250
+ /** 智能卡 */
251
+ readonly SMARTCARD: "urn:oasis:names:tc:SAML:2.0:ac:classes:Smartcard";
252
+ /** Kerberos */
253
+ readonly KERBEROS: "urn:oasis:names:tc:SAML:2.0:ac:classes:Kerberos";
254
+ /** 生物识别 */
255
+ readonly BIOMETRIC: "urn:oasis:names:tc:SAML:2.0:ac:classes:Biometric";
256
+ /** 远程认证拨号用户服务 */
257
+ readonly RADIUS: "urn:oasis:names:tc:SAML:2.0:ac:classes:Radius";
258
+ /** 硬件令牌 */
259
+ readonly HARDWARE_TOKEN: "urn:oasis:names:tc:SAML:2.0:ac:classes:HardwareToken";
260
+ /** 时间同步令牌 */
261
+ readonly TIME_SYNC_TOKEN: "urn:oasis:names:tc:SAML:2.0:ac:classes:TimeSyncToken";
262
+ /** 互联网协议 */
263
+ readonly IP: "urn:oasis:names:tc:SAML:2.0:ac:classes:InternetProtocol";
264
+ /** 先前会话 */
265
+ readonly PREVIOUS_SESSION: "urn:oasis:names:tc:SAML:2.0:ac:classes:PreviousSession";
266
+ /** 共享秘密 */
267
+ readonly SHARED_SECRET: "urn:oasis:names:tc:SAML:2.0:ac:classes:SharedSecret";
268
+ };
269
+ /**
270
+ * 生成标准的 Consent URI
271
+ */
272
+ export declare const Consent: {
273
+ /** 未指定 */
274
+ readonly UNSPECIFIED: "urn:oasis:names:tc:SAML:2.0:consent:unspecified";
275
+ /** 获得同意 */
276
+ readonly OBTAINED: "urn:oasis:names:tc:SAML:2.0:consent:obtained";
277
+ /** 先前的同意 */
278
+ readonly PRIOR: "urn:oasis:names:tc:SAML:2.0:consent:prior";
279
+ /** 隐式同意 */
280
+ readonly IMPLICIT: "urn:oasis:names:tc:SAML:2.0:consent:implicit";
281
+ /** 显式同意 */
282
+ readonly EXPLICIT: "urn:oasis:names:tc:SAML:2.0:consent:explicit";
283
+ /** 当前同意 */
284
+ readonly CURRENT: "urn:oasis:names:tc:SAML:2.0:consent:current";
285
+ };
286
+ //# sourceMappingURL=saml2-enhancements.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saml2-enhancements.d.ts","sourceRoot":"","sources":["../../src/saml2-enhancements.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,101 @@ export type AttributeConsumingService = {
43
43
  requestedAttributes: RequestedAttribute[];
44
44
  };
45
45
  export type AttrService = AttributeConsumingService[];
46
+ /**
47
+ * Scoping 配置 - 用于代理 SSO
48
+ */
49
+ export interface ScopingConfig {
50
+ proxyCount?: number;
51
+ requesterID?: string[];
52
+ idpList?: Array<{
53
+ providerID: string;
54
+ name?: string;
55
+ loc?: string;
56
+ }>;
57
+ }
58
+ /**
59
+ * RequestedAuthnContext 配置 - 用于 MFA 等场景
60
+ */
61
+ export interface RequestedAuthnContextConfig {
62
+ comparison?: 'exact' | 'minimum' | 'maximum' | 'better';
63
+ classRefs?: string[];
64
+ declRefs?: string[];
65
+ }
66
+ /**
67
+ * OneTimeUse 条件配置
68
+ */
69
+ export interface OneTimeUseConfig {
70
+ enabled: boolean;
71
+ }
72
+ /**
73
+ * ProxyRestriction 条件配置
74
+ */
75
+ export interface ProxyRestrictionConfig {
76
+ count?: number;
77
+ audience?: string[];
78
+ }
79
+ /**
80
+ * SubjectConfirmation 增强配置
81
+ */
82
+ export interface SubjectConfirmationDataConfig {
83
+ address?: string;
84
+ notBefore?: string;
85
+ inResponseTo?: string;
86
+ }
87
+ /**
88
+ * Organization 信息配置
89
+ */
90
+ export interface OrganizationConfig {
91
+ name: {
92
+ 'xml:lang'?: string;
93
+ value: string;
94
+ };
95
+ displayName?: {
96
+ 'xml:lang'?: string;
97
+ value: string;
98
+ };
99
+ url?: {
100
+ 'xml:lang'?: string;
101
+ value: string;
102
+ };
103
+ }
104
+ /**
105
+ * ContactPerson 信息配置
106
+ */
107
+ export interface ContactPersonConfig {
108
+ contactType: 'technical' | 'support' | 'administrative' | 'billing' | 'other';
109
+ company?: string;
110
+ givenName?: string;
111
+ surName?: string;
112
+ emailAddress?: string;
113
+ telephoneNumber?: string;
114
+ }
115
+ /**
116
+ * AuthnRequest 增强配置
117
+ */
118
+ export interface AuthnRequestEnhancedConfig {
119
+ scoping?: ScopingConfig;
120
+ requestedAuthnContext?: RequestedAuthnContextConfig;
121
+ forceAuthn?: boolean;
122
+ isPassive?: boolean;
123
+ consent?: string;
124
+ attributeConsumingServiceIndex?: number;
125
+ providerName?: string;
126
+ }
127
+ /**
128
+ * Conditions 增强配置
129
+ */
130
+ export interface ConditionsEnhancedConfig {
131
+ oneTimeUse?: OneTimeUseConfig;
132
+ proxyRestriction?: ProxyRestrictionConfig;
133
+ }
134
+ /**
135
+ * 元数据增强配置
136
+ */
137
+ export interface MetadataEnhancedConfig {
138
+ organization?: OrganizationConfig;
139
+ contactPerson?: ContactPersonConfig[];
140
+ }
46
141
  export interface MetadataIdpOptions {
47
142
  entityID?: string;
48
143
  signingCert?: string | Buffer | (string | Buffer)[];
@@ -53,6 +148,7 @@ export interface MetadataIdpOptions {
53
148
  singleLogoutService?: SSOService[];
54
149
  artifactResolutionService?: SSOService[];
55
150
  requestSignatureAlgorithm?: string;
151
+ metadataEnhancements?: MetadataEnhancedConfig;
56
152
  }
57
153
  export type MetadataIdpConstructor = MetadataIdpOptions | MetadataFile;
58
154
  export interface MetadataSpOptions {
@@ -72,6 +168,7 @@ export interface MetadataSpOptions {
72
168
  attributeConsumingService?: AttributeConsumingService[];
73
169
  artifactResolutionService?: SSOService[];
74
170
  elementsOrder?: string[];
171
+ metadataEnhancements?: MetadataEnhancedConfig;
75
172
  }
76
173
  export type MetadataSpConstructor = MetadataSpOptions | MetadataFile;
77
174
  export type EntitySetting = ServiceProviderSettings & IdentityProviderSettings;
@@ -111,6 +208,10 @@ export type ServiceProviderSettings = {
111
208
  allowCreate?: boolean;
112
209
  relayState?: string;
113
210
  clockDrifts?: [number, number];
211
+ authnRequestEnhancements?: AuthnRequestEnhancedConfig;
212
+ conditionsEnhancements?: ConditionsEnhancedConfig;
213
+ subjectConfirmationEnhancements?: SubjectConfirmationDataConfig;
214
+ metadataEnhancements?: MetadataEnhancedConfig;
114
215
  };
115
216
  export type IdentityProviderSettings = {
116
217
  metadata?: string | Buffer;
@@ -141,5 +242,9 @@ export type IdentityProviderSettings = {
141
242
  tagPrefix?: {
142
243
  [key: string]: string;
143
244
  };
245
+ authnRequestEnhancements?: AuthnRequestEnhancedConfig;
246
+ conditionsEnhancements?: ConditionsEnhancedConfig;
247
+ subjectConfirmationEnhancements?: SubjectConfirmationDataConfig;
248
+ metadataEnhancements?: MetadataEnhancedConfig;
144
249
  };
145
250
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -135,15 +135,19 @@ declare const tags: {
135
135
  AttributeStatement: string;
136
136
  ConditionsNotBefore: string;
137
137
  ConditionsNotOnOrAfter: string;
138
+ Consent: string;
138
139
  Destination: string;
139
140
  EntityID: string;
141
+ ForceAuthn: string;
140
142
  ID: string;
143
+ IsPassive: string;
141
144
  Issuer: string;
142
145
  IssueInstant: string;
143
146
  InResponseTo: string;
144
147
  NameID: string;
145
148
  NameIDFormat: string;
146
149
  ProtocolBinding: string;
150
+ ProviderName: string;
147
151
  SessionIndex: string;
148
152
  SubjectRecipient: string;
149
153
  SubjectConfirmationDataNotOnOrAfter: string;
@@ -1 +1 @@
1
- {"version":3,"file":"urn.d.ts","sourceRoot":"","sources":["../../src/urn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"urn.d.ts","sourceRoot":"","sources":["../../src/urn.ts"],"names":[],"mappings":"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"}
@@ -122,6 +122,22 @@ export declare function validateRelayState(relayState: string): {
122
122
  valid: boolean;
123
123
  error?: string;
124
124
  };
125
+ /**
126
+ * @desc 验证并标准化证书数组,处理 null、undefined、空字符串、非数组等边界情况
127
+ * @param {any} metadataCert - 证书输入,可能是 string、string[]、null、undefined 或其他类型
128
+ * @returns {string[]} 标准化后的证书字符串数组(纯 Base64 格式,无 PEM 头尾和换行)
129
+ * @throws {Error} 当证书格式无效时抛出错误
130
+ */
131
+ export declare function normalizeCertificates(metadataCert: any): string[];
132
+ /**
133
+ * @desc 验证证书是否有效(可选,用于更严格的验证)
134
+ * @param {string} certificateBase64 - Base64 编码的证书(不含 PEM 头尾)
135
+ * @returns {{ isValid: boolean; error?: string }} 验证结果
136
+ */
137
+ export declare function validateCertificate(certificateBase64: string): {
138
+ isValid: boolean;
139
+ error?: string;
140
+ };
125
141
  /**
126
142
  * @desc 日志脱敏函数,过滤敏感信息
127
143
  * @param {any} data - 需要脱敏的数据
@@ -145,6 +161,8 @@ declare const utility: {
145
161
  isNonEmptyArray: typeof isNonEmptyArray;
146
162
  validateRelayState: typeof validateRelayState;
147
163
  sanitizeLog: typeof sanitizeLog;
164
+ normalizeCertificates: typeof normalizeCertificates;
165
+ validateCertificate: typeof validateCertificate;
148
166
  };
149
167
  export default utility;
150
168
  //# sourceMappingURL=utility.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../src/utility.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,cAAc,UAAO,MAmB3E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,OAIvC;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,OAEhC;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,YAGnC;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,GAAG,KAAA,EAAE,IAAI,KAAA,EAAE,YAAY,KAAA,OAG1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,GAAG,mBAElC;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,UAE/C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAGtF;AAED;;;;GAIG;AACH,iBAAS,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAKhD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAc9D;AAYD;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,UAEtD;AAED;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,UAErD;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,GAAG,KAAA,UAEtB;AAED;;;;GAIG;AACH,iBAAS,WAAW,CAAC,GAAG,KAAA,EAAE,YAAY,SAAK,OAE1C;AAED;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,IAAI,KAAA,EAAE,IAAI,KAAA,OAE/B;AAED;;;;GAIG;AACH,iBAAS,8BAA8B,CAAC,qBAAqB,EAAE,MAAM,UAWpE;AAuED,wBAAgB,cAAc,CAC1B,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,UAAU,CAAC,EAAE,MAAM,EACnB,cAAc,GAAE,OAAc,GAC/B,MAAM,GAAG,MAAM,CAyCjB;AACD;;GAEG;AACH,iBAAS,eAAe,CAAC,KAAK,KAAA,EAAE,cAAc,KAAA,OAE7C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,WAErC;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAGhD;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAElF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA2BzF;AAgBD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAoB1C;AAED,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;CAiBZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../src/utility.ts"],"names":[],"mappings":"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"}