@sphereon/ssi-sdk.siopv2-oid4vp-rp-auth 0.34.1-feature.SSISDK.58.host.nonce.endpoint.145 → 0.34.1-feature.SSISDK.62.218
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/index.cjs +417 -403
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +729 -45
- package/dist/index.d.ts +729 -45
- package/dist/index.js +410 -397
- package/dist/index.js.map +1 -1
- package/package.json +17 -17
- package/src/RPInstance.ts +11 -28
- package/src/agent/SIOPv2RP.ts +81 -58
- package/src/functions.ts +49 -46
- package/src/index.ts +1 -1
- package/src/types/ISIOPv2RP.ts +22 -33
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IPluginMethodMap, IAgentContext, IResolver, IDIDManager, IKeyManager,
|
|
2
|
-
import { ResponseURIType, ClaimPayloadCommonOpts, AuthorizationRequestPayload, RequestObjectPayload, AuthorizationRequestState,
|
|
1
|
+
import { IPluginMethodMap, IAgentContext, IResolver, IDIDManager, IKeyManager, ICredentialVerifier, IAgentPlugin } from '@veramo/core';
|
|
2
|
+
import { ResponseURIType, ClaimPayloadCommonOpts, CallbackOpts, AuthorizationRequestPayload, RequestObjectPayload, AuthorizationRequestState, AuthorizationResponseStateWithVerifiedData, AuthorizationResponsePayload, VerifiedAuthorizationResponse, ResponseMode, SupportedVersion, IRPSessionManager, ClientMetadataOpts, VerifyJwtCallback, PresentationVerificationCallback, RP, URI, AuthorizationRequest } from '@sphereon/did-auth-siop';
|
|
3
3
|
import { CheckLinkedDomain } from '@sphereon/did-auth-siop-adapter';
|
|
4
4
|
import { DIDDocument } from '@sphereon/did-uni-client';
|
|
5
5
|
import { JwtIssuer } from '@sphereon/oid4vc-common';
|
|
@@ -9,15 +9,387 @@ import { IIdentifierResolution, ManagedIdentifierOptsOrResult, ExternalIdentifie
|
|
|
9
9
|
import { IJwtService } from '@sphereon/ssi-sdk-ext.jwt-service';
|
|
10
10
|
import { ICredentialValidation, SchemaValidation } from '@sphereon/ssi-sdk.credential-validation';
|
|
11
11
|
import { ImDLMdoc } from '@sphereon/ssi-sdk.mdl-mdoc';
|
|
12
|
-
import { IPDManager, VersionControlMode } from '@sphereon/ssi-sdk.pd-manager';
|
|
12
|
+
import { IPDManager, ImportDcqlQueryItem, VersionControlMode } from '@sphereon/ssi-sdk.pd-manager';
|
|
13
13
|
import { IPresentationExchange } from '@sphereon/ssi-sdk.presentation-exchange';
|
|
14
14
|
import { ISDJwtPlugin } from '@sphereon/ssi-sdk.sd-jwt';
|
|
15
15
|
import { AuthorizationRequestStateStatus } from '@sphereon/ssi-sdk.siopv2-oid4vp-common';
|
|
16
|
-
import {
|
|
16
|
+
import { HasherSync } from '@sphereon/ssi-types';
|
|
17
17
|
import { VerifyCallback } from '@sphereon/wellknown-dids-client';
|
|
18
|
+
import { DcqlQuery } from 'dcql';
|
|
18
19
|
import { Resolvable } from 'did-resolver';
|
|
19
20
|
import { EventEmitter } from 'events';
|
|
20
21
|
|
|
22
|
+
var IDidAuthSiopOpAuthenticator = {
|
|
23
|
+
components: {
|
|
24
|
+
schemas: {
|
|
25
|
+
IGetSiopSessionArgs: {
|
|
26
|
+
type: "object",
|
|
27
|
+
properties: {
|
|
28
|
+
sessionId: {
|
|
29
|
+
type: "string"
|
|
30
|
+
},
|
|
31
|
+
additionalProperties: false
|
|
32
|
+
},
|
|
33
|
+
required: [
|
|
34
|
+
"sessionId"
|
|
35
|
+
],
|
|
36
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSessionForSiop } "
|
|
37
|
+
},
|
|
38
|
+
IRegisterSiopSessionArgs: {
|
|
39
|
+
type: "object",
|
|
40
|
+
properties: {
|
|
41
|
+
identifier: {
|
|
42
|
+
type: "object",
|
|
43
|
+
properties: {
|
|
44
|
+
did: {
|
|
45
|
+
type: "string"
|
|
46
|
+
},
|
|
47
|
+
alias: {
|
|
48
|
+
type: "string"
|
|
49
|
+
},
|
|
50
|
+
provider: {
|
|
51
|
+
type: "string"
|
|
52
|
+
},
|
|
53
|
+
controllerKeyId: {
|
|
54
|
+
type: "string"
|
|
55
|
+
},
|
|
56
|
+
keys: {
|
|
57
|
+
type: "array",
|
|
58
|
+
items: {
|
|
59
|
+
type: "object",
|
|
60
|
+
properties: {
|
|
61
|
+
additionalProperties: true
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
services: {
|
|
66
|
+
type: "array",
|
|
67
|
+
items: {
|
|
68
|
+
type: "object",
|
|
69
|
+
properties: {
|
|
70
|
+
additionalProperties: true
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
additionalProperties: false,
|
|
76
|
+
required: [
|
|
77
|
+
"did",
|
|
78
|
+
"provider",
|
|
79
|
+
"keys",
|
|
80
|
+
"services"
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
sessionId: {
|
|
84
|
+
type: "string"
|
|
85
|
+
},
|
|
86
|
+
expiresIn: {
|
|
87
|
+
type: "number"
|
|
88
|
+
},
|
|
89
|
+
additionalProperties: false
|
|
90
|
+
},
|
|
91
|
+
required: [
|
|
92
|
+
"identifier"
|
|
93
|
+
],
|
|
94
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.registerSessionForSiop } "
|
|
95
|
+
},
|
|
96
|
+
IRemoveSiopSessionArgs: {
|
|
97
|
+
type: "object",
|
|
98
|
+
properties: {
|
|
99
|
+
sessionId: {
|
|
100
|
+
type: "string"
|
|
101
|
+
},
|
|
102
|
+
additionalProperties: false
|
|
103
|
+
},
|
|
104
|
+
required: [
|
|
105
|
+
"sessionId"
|
|
106
|
+
],
|
|
107
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.removeSessionForSiop } "
|
|
108
|
+
},
|
|
109
|
+
IAuthenticateWithSiopArgs: {
|
|
110
|
+
type: "object",
|
|
111
|
+
properties: {
|
|
112
|
+
sessionId: {
|
|
113
|
+
type: "string"
|
|
114
|
+
},
|
|
115
|
+
stateId: {
|
|
116
|
+
type: "string"
|
|
117
|
+
},
|
|
118
|
+
redirectUrl: {
|
|
119
|
+
type: "string"
|
|
120
|
+
},
|
|
121
|
+
additionalProperties: false
|
|
122
|
+
},
|
|
123
|
+
required: [
|
|
124
|
+
"sessionId",
|
|
125
|
+
"stateId",
|
|
126
|
+
"redirectUrl"
|
|
127
|
+
],
|
|
128
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.authenticateWithSiop } "
|
|
129
|
+
},
|
|
130
|
+
IResponse: {
|
|
131
|
+
type: "object",
|
|
132
|
+
properties: {
|
|
133
|
+
status: {
|
|
134
|
+
type: "number"
|
|
135
|
+
},
|
|
136
|
+
additionalProperties: true
|
|
137
|
+
},
|
|
138
|
+
required: [
|
|
139
|
+
"status"
|
|
140
|
+
],
|
|
141
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.authenticateWithSiop & DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
142
|
+
},
|
|
143
|
+
IGetSiopAuthenticationRequestFromRpArgs: {
|
|
144
|
+
type: "object",
|
|
145
|
+
properties: {
|
|
146
|
+
sessionId: {
|
|
147
|
+
type: "string"
|
|
148
|
+
},
|
|
149
|
+
stateId: {
|
|
150
|
+
type: "string"
|
|
151
|
+
},
|
|
152
|
+
redirectUrl: {
|
|
153
|
+
type: "string"
|
|
154
|
+
},
|
|
155
|
+
additionalProperties: false
|
|
156
|
+
},
|
|
157
|
+
required: [
|
|
158
|
+
"sessionId",
|
|
159
|
+
"stateId",
|
|
160
|
+
"redirectUrl"
|
|
161
|
+
],
|
|
162
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
163
|
+
},
|
|
164
|
+
ParsedAuthenticationRequestURI: {
|
|
165
|
+
type: "object",
|
|
166
|
+
properties: {
|
|
167
|
+
jwt: {
|
|
168
|
+
type: "string"
|
|
169
|
+
},
|
|
170
|
+
requestPayload: {
|
|
171
|
+
type: "object",
|
|
172
|
+
properties: {
|
|
173
|
+
additionalProperties: true
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
registration: {
|
|
177
|
+
type: "object",
|
|
178
|
+
properties: {
|
|
179
|
+
additionalProperties: true
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
additionalProperties: false
|
|
183
|
+
},
|
|
184
|
+
required: [
|
|
185
|
+
"jwt",
|
|
186
|
+
"requestPayload",
|
|
187
|
+
"registration"
|
|
188
|
+
],
|
|
189
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
190
|
+
},
|
|
191
|
+
IGetSiopAuthenticationRequestDetailsArgs: {
|
|
192
|
+
type: "object",
|
|
193
|
+
properties: {
|
|
194
|
+
sessionId: {
|
|
195
|
+
type: "string"
|
|
196
|
+
},
|
|
197
|
+
verifiedAuthenticationRequest: {
|
|
198
|
+
type: "object",
|
|
199
|
+
properties: {
|
|
200
|
+
additionalProperties: true
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
credentialFilter: {
|
|
204
|
+
type: "object",
|
|
205
|
+
properties: {
|
|
206
|
+
additionalProperties: true
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
additionalProperties: false
|
|
210
|
+
},
|
|
211
|
+
required: [
|
|
212
|
+
"sessionId",
|
|
213
|
+
"verifiedAuthenticationRequest"
|
|
214
|
+
],
|
|
215
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestDetails } "
|
|
216
|
+
},
|
|
217
|
+
IAuthRequestDetails: {
|
|
218
|
+
type: "object",
|
|
219
|
+
properties: {
|
|
220
|
+
id: {
|
|
221
|
+
type: "string"
|
|
222
|
+
},
|
|
223
|
+
alsoKnownAs: {
|
|
224
|
+
type: "array",
|
|
225
|
+
items: {
|
|
226
|
+
type: "string"
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
vpResponseOpts: {
|
|
230
|
+
type: "object",
|
|
231
|
+
properties: {
|
|
232
|
+
additionalProperties: true
|
|
233
|
+
}
|
|
234
|
+
},
|
|
235
|
+
additionalProperties: false
|
|
236
|
+
},
|
|
237
|
+
required: [
|
|
238
|
+
"id",
|
|
239
|
+
"vpResponseOpts"
|
|
240
|
+
],
|
|
241
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestDetails } "
|
|
242
|
+
},
|
|
243
|
+
IVerifySiopAuthenticationRequestUriArgs: {
|
|
244
|
+
type: "object",
|
|
245
|
+
properties: {
|
|
246
|
+
sessionId: {
|
|
247
|
+
type: "string"
|
|
248
|
+
},
|
|
249
|
+
ParsedAuthenticationRequestURI: {
|
|
250
|
+
type: "object",
|
|
251
|
+
properties: {
|
|
252
|
+
additionalProperties: true
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
additionalProperties: false
|
|
256
|
+
},
|
|
257
|
+
required: [
|
|
258
|
+
"sessionId",
|
|
259
|
+
"ParsedAuthenticationRequestURI"
|
|
260
|
+
],
|
|
261
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
262
|
+
},
|
|
263
|
+
VerifiedAuthorizationRequest: {
|
|
264
|
+
type: "object",
|
|
265
|
+
properties: {
|
|
266
|
+
payload: {
|
|
267
|
+
type: "object",
|
|
268
|
+
properties: {
|
|
269
|
+
additionalProperties: true
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
presentationDefinitions: {
|
|
273
|
+
type: "object",
|
|
274
|
+
properties: {
|
|
275
|
+
additionalProperties: true
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
verifyOpts: {
|
|
279
|
+
type: "object",
|
|
280
|
+
properties: {
|
|
281
|
+
additionalProperties: true
|
|
282
|
+
}
|
|
283
|
+
},
|
|
284
|
+
additionalProperties: false
|
|
285
|
+
},
|
|
286
|
+
required: [
|
|
287
|
+
"payload",
|
|
288
|
+
"verifyOpts"
|
|
289
|
+
],
|
|
290
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
291
|
+
},
|
|
292
|
+
ISendSiopAuthenticationResponseArgs: {
|
|
293
|
+
type: "object",
|
|
294
|
+
properties: {
|
|
295
|
+
sessionId: {
|
|
296
|
+
type: "string"
|
|
297
|
+
},
|
|
298
|
+
verifiedAuthenticationRequest: {
|
|
299
|
+
type: "object",
|
|
300
|
+
properties: {
|
|
301
|
+
additionalProperties: true
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
verifiablePresentationResponse: {
|
|
305
|
+
type: "object",
|
|
306
|
+
properties: {
|
|
307
|
+
additionalProperties: true
|
|
308
|
+
}
|
|
309
|
+
},
|
|
310
|
+
additionalProperties: false
|
|
311
|
+
},
|
|
312
|
+
required: [
|
|
313
|
+
"sessionId",
|
|
314
|
+
"verifiedAuthenticationRequest"
|
|
315
|
+
],
|
|
316
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
317
|
+
}
|
|
318
|
+
},
|
|
319
|
+
methods: {
|
|
320
|
+
getSessionForSiop: {
|
|
321
|
+
description: "Get SIOP session",
|
|
322
|
+
"arguments": {
|
|
323
|
+
$ref: "#/components/schemas/IGetSiopSessionArgs"
|
|
324
|
+
},
|
|
325
|
+
returnType: "object"
|
|
326
|
+
},
|
|
327
|
+
registerSessionForSiop: {
|
|
328
|
+
description: "Register SIOP session",
|
|
329
|
+
"arguments": {
|
|
330
|
+
$ref: "#/components/schemas/IRegisterSiopSessionArgs"
|
|
331
|
+
},
|
|
332
|
+
returnType: "object"
|
|
333
|
+
},
|
|
334
|
+
removeSessionForSiop: {
|
|
335
|
+
description: "Remove SIOP session",
|
|
336
|
+
"arguments": {
|
|
337
|
+
$ref: "#/components/schemas/IRemoveSiopSessionArgs"
|
|
338
|
+
},
|
|
339
|
+
returnType: "boolean"
|
|
340
|
+
},
|
|
341
|
+
authenticateWithSiop: {
|
|
342
|
+
description: "Authenticate using DID Auth SIOP",
|
|
343
|
+
"arguments": {
|
|
344
|
+
$ref: "#/components/schemas/IAuthenticateWithSiopArgs"
|
|
345
|
+
},
|
|
346
|
+
returnType: {
|
|
347
|
+
$ref: "#/components/schemas/Response"
|
|
348
|
+
}
|
|
349
|
+
},
|
|
350
|
+
getSiopAuthenticationRequestFromRP: {
|
|
351
|
+
description: "Get authentication request from RP",
|
|
352
|
+
"arguments": {
|
|
353
|
+
$ref: "#/components/schemas/IGetSiopAuthenticationRequestFromRpArgs"
|
|
354
|
+
},
|
|
355
|
+
returnType: {
|
|
356
|
+
$ref: "#/components/schemas/ParsedAuthenticationRequestURI"
|
|
357
|
+
}
|
|
358
|
+
},
|
|
359
|
+
getSiopAuthenticationRequestDetails: {
|
|
360
|
+
description: "Get authentication request details",
|
|
361
|
+
"arguments": {
|
|
362
|
+
$ref: "#/components/schemas/IGetSiopAuthenticationRequestDetailsArgs"
|
|
363
|
+
},
|
|
364
|
+
returnType: {
|
|
365
|
+
$ref: "#/components/schemas/IAuthRequestDetails"
|
|
366
|
+
}
|
|
367
|
+
},
|
|
368
|
+
verifySiopAuthenticationRequestURI: {
|
|
369
|
+
description: "Verify authentication request URI",
|
|
370
|
+
"arguments": {
|
|
371
|
+
$ref: "#/components/schemas/IVerifySiopAuthenticationRequestUriArgs"
|
|
372
|
+
},
|
|
373
|
+
returnType: {
|
|
374
|
+
$ref: "#/components/schemas/VerifiedAuthorizationRequest"
|
|
375
|
+
}
|
|
376
|
+
},
|
|
377
|
+
sendSiopAuthenticationResponse: {
|
|
378
|
+
description: "Send authentication response",
|
|
379
|
+
"arguments": {
|
|
380
|
+
$ref: "#/components/schemas/ISendSiopAuthenticationResponseArgs"
|
|
381
|
+
},
|
|
382
|
+
returnType: {
|
|
383
|
+
$ref: "#/components/schemas/IRequiredContext"
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
var plugin_schema = {
|
|
390
|
+
IDidAuthSiopOpAuthenticator: IDidAuthSiopOpAuthenticator
|
|
391
|
+
};
|
|
392
|
+
|
|
21
393
|
declare enum VerifiedDataMode {
|
|
22
394
|
NONE = "none",
|
|
23
395
|
VERIFIED_PRESENTATION = "vp",
|
|
@@ -41,8 +413,9 @@ interface ISiopv2RPOpts {
|
|
|
41
413
|
interface IRPDefaultOpts extends IRPOptions {
|
|
42
414
|
}
|
|
43
415
|
interface ICreateAuthRequestArgs {
|
|
44
|
-
|
|
416
|
+
queryId: string;
|
|
45
417
|
correlationId: string;
|
|
418
|
+
useQueryIdInstance?: boolean;
|
|
46
419
|
responseURIType: ResponseURIType;
|
|
47
420
|
responseURI: string;
|
|
48
421
|
responseRedirectURI?: string;
|
|
@@ -51,49 +424,46 @@ interface ICreateAuthRequestArgs {
|
|
|
51
424
|
nonce?: string;
|
|
52
425
|
state?: string;
|
|
53
426
|
claims?: ClaimPayloadCommonOpts;
|
|
427
|
+
callback?: CallbackOpts;
|
|
54
428
|
}
|
|
55
429
|
interface IGetAuthRequestStateArgs {
|
|
56
430
|
correlationId: string;
|
|
57
|
-
|
|
431
|
+
queryId?: string;
|
|
58
432
|
errorOnNotFound?: boolean;
|
|
59
433
|
}
|
|
60
434
|
interface IGetAuthResponseStateArgs {
|
|
61
435
|
correlationId: string;
|
|
62
|
-
|
|
436
|
+
queryId?: string;
|
|
63
437
|
errorOnNotFound?: boolean;
|
|
64
438
|
progressRequestStateTo?: AuthorizationRequestStateStatus;
|
|
65
439
|
includeVerifiedData?: VerifiedDataMode;
|
|
66
440
|
}
|
|
67
441
|
interface IUpdateRequestStateArgs {
|
|
68
|
-
|
|
442
|
+
queryId: string;
|
|
69
443
|
correlationId: string;
|
|
70
444
|
state: AuthorizationRequestStateStatus;
|
|
71
445
|
error?: string;
|
|
72
446
|
}
|
|
73
447
|
interface IDeleteAuthStateArgs {
|
|
74
448
|
correlationId: string;
|
|
75
|
-
|
|
449
|
+
queryId?: string;
|
|
76
450
|
}
|
|
77
451
|
interface IVerifyAuthResponseStateArgs {
|
|
78
452
|
authorizationResponse: string | AuthorizationResponsePayload;
|
|
79
|
-
|
|
453
|
+
queryId?: string;
|
|
80
454
|
correlationId: string;
|
|
81
455
|
audience?: string;
|
|
82
|
-
|
|
83
|
-
}
|
|
84
|
-
interface IDefinitionPair {
|
|
85
|
-
definitionPayload?: IPresentationDefinition;
|
|
86
|
-
dcqlPayload?: DcqlQueryPayload;
|
|
456
|
+
dcqlQuery?: DcqlQuery;
|
|
87
457
|
}
|
|
88
458
|
interface ImportDefinitionsArgs {
|
|
89
|
-
|
|
459
|
+
importItems: Array<ImportDcqlQueryItem>;
|
|
90
460
|
tenantId?: string;
|
|
91
461
|
version?: string;
|
|
92
462
|
versionControlMode?: VersionControlMode;
|
|
93
463
|
}
|
|
94
464
|
interface IGetRedirectUriArgs {
|
|
95
465
|
correlationId: string;
|
|
96
|
-
|
|
466
|
+
queryId?: string;
|
|
97
467
|
state?: string;
|
|
98
468
|
}
|
|
99
469
|
interface IAuthorizationRequestPayloads {
|
|
@@ -106,10 +476,11 @@ interface IPEXDefinitionPersistArgs extends IPEXInstanceOptions {
|
|
|
106
476
|
ttl?: number;
|
|
107
477
|
}
|
|
108
478
|
interface ISiopRPInstanceArgs {
|
|
109
|
-
|
|
479
|
+
createWhenNotPresent: boolean;
|
|
480
|
+
queryId?: string;
|
|
110
481
|
responseRedirectURI?: string;
|
|
111
482
|
}
|
|
112
|
-
interface IPEXInstanceOptions extends
|
|
483
|
+
interface IPEXInstanceOptions extends IPresentationOptions {
|
|
113
484
|
rpOpts?: IRPOptions;
|
|
114
485
|
}
|
|
115
486
|
interface IRPOptions {
|
|
@@ -125,11 +496,9 @@ interface IRPOptions {
|
|
|
125
496
|
verifyJwtCallback?: VerifyJwtCallback;
|
|
126
497
|
responseRedirectUri?: string;
|
|
127
498
|
}
|
|
128
|
-
interface
|
|
499
|
+
interface IPresentationOptions {
|
|
500
|
+
queryId: string;
|
|
129
501
|
presentationVerifyCallback?: PresentationVerificationCallback;
|
|
130
|
-
definitionId: string;
|
|
131
|
-
version?: string;
|
|
132
|
-
tenantId?: string;
|
|
133
502
|
}
|
|
134
503
|
type VerificationPolicies = {
|
|
135
504
|
schemaValidation: SchemaValidation;
|
|
@@ -152,34 +521,354 @@ interface ISIOPIdentifierOptions extends Omit<IDIDOptions, 'idOpts'> {
|
|
|
152
521
|
type CredentialOpts = {
|
|
153
522
|
hasher?: HasherSync;
|
|
154
523
|
};
|
|
155
|
-
|
|
156
|
-
verifiedData?: AdditionalClaims;
|
|
157
|
-
}
|
|
158
|
-
type IRequiredContext = IAgentContext<IResolver & IDIDManager & IKeyManager & IIdentifierResolution & ICredentialIssuer & ICredentialValidation & ICredentialVerifier & IPresentationExchange & IPDManager & ISDJwtPlugin & IJwtService & ImDLMdoc>;
|
|
524
|
+
type IRequiredContext = IAgentContext<IResolver & IDIDManager & IKeyManager & IIdentifierResolution & ICredentialValidation & ICredentialVerifier & IPresentationExchange & IPDManager & ISDJwtPlugin & IJwtService & ImDLMdoc>;
|
|
159
525
|
|
|
160
526
|
declare class RPInstance {
|
|
161
527
|
private _rp;
|
|
162
|
-
private readonly
|
|
528
|
+
private readonly _presentationOptions;
|
|
163
529
|
private readonly _rpOptions;
|
|
164
530
|
constructor({ rpOpts, pexOpts }: {
|
|
165
531
|
rpOpts: IRPOptions;
|
|
166
|
-
pexOpts?:
|
|
532
|
+
pexOpts?: IPresentationOptions;
|
|
167
533
|
});
|
|
168
534
|
get(context: IRequiredContext): Promise<RP>;
|
|
169
535
|
get rpOptions(): IRPOptions;
|
|
170
|
-
get
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
getPresentationDefinition(context: IRequiredContext): Promise<IPresentationDefinition | undefined>;
|
|
174
|
-
createAuthorizationRequestURI(createArgs: Omit<ICreateAuthRequestArgs, 'definitionId'>, context: IRequiredContext): Promise<URI>;
|
|
175
|
-
createAuthorizationRequest(createArgs: Omit<ICreateAuthRequestArgs, 'definitionId'>, context: IRequiredContext): Promise<AuthorizationRequest>;
|
|
536
|
+
get presentationOptions(): IPresentationOptions | undefined;
|
|
537
|
+
createAuthorizationRequestURI(createArgs: ICreateAuthRequestArgs, context: IRequiredContext): Promise<URI>;
|
|
538
|
+
createAuthorizationRequest(createArgs: Omit<ICreateAuthRequestArgs, 'queryId'>, context: IRequiredContext): Promise<AuthorizationRequest>;
|
|
176
539
|
}
|
|
177
540
|
|
|
178
541
|
declare class SIOPv2RP implements IAgentPlugin {
|
|
179
542
|
private readonly opts;
|
|
180
543
|
private static readonly _DEFAULT_OPTS_KEY;
|
|
181
544
|
private readonly instances;
|
|
182
|
-
readonly schema:
|
|
545
|
+
readonly schema: {
|
|
546
|
+
components: {
|
|
547
|
+
schemas: {
|
|
548
|
+
IGetSiopSessionArgs: {
|
|
549
|
+
type: string;
|
|
550
|
+
properties: {
|
|
551
|
+
sessionId: {
|
|
552
|
+
type: string;
|
|
553
|
+
};
|
|
554
|
+
additionalProperties: boolean;
|
|
555
|
+
};
|
|
556
|
+
required: string[];
|
|
557
|
+
description: string;
|
|
558
|
+
};
|
|
559
|
+
IRegisterSiopSessionArgs: {
|
|
560
|
+
type: string;
|
|
561
|
+
properties: {
|
|
562
|
+
identifier: {
|
|
563
|
+
type: string;
|
|
564
|
+
properties: {
|
|
565
|
+
did: {
|
|
566
|
+
type: string;
|
|
567
|
+
};
|
|
568
|
+
alias: {
|
|
569
|
+
type: string;
|
|
570
|
+
};
|
|
571
|
+
provider: {
|
|
572
|
+
type: string;
|
|
573
|
+
};
|
|
574
|
+
controllerKeyId: {
|
|
575
|
+
type: string;
|
|
576
|
+
};
|
|
577
|
+
keys: {
|
|
578
|
+
type: string;
|
|
579
|
+
items: {
|
|
580
|
+
type: string;
|
|
581
|
+
properties: {
|
|
582
|
+
additionalProperties: boolean;
|
|
583
|
+
};
|
|
584
|
+
};
|
|
585
|
+
};
|
|
586
|
+
services: {
|
|
587
|
+
type: string;
|
|
588
|
+
items: {
|
|
589
|
+
type: string;
|
|
590
|
+
properties: {
|
|
591
|
+
additionalProperties: boolean;
|
|
592
|
+
};
|
|
593
|
+
};
|
|
594
|
+
};
|
|
595
|
+
};
|
|
596
|
+
additionalProperties: boolean;
|
|
597
|
+
required: string[];
|
|
598
|
+
};
|
|
599
|
+
sessionId: {
|
|
600
|
+
type: string;
|
|
601
|
+
};
|
|
602
|
+
expiresIn: {
|
|
603
|
+
type: string;
|
|
604
|
+
};
|
|
605
|
+
additionalProperties: boolean;
|
|
606
|
+
};
|
|
607
|
+
required: string[];
|
|
608
|
+
description: string;
|
|
609
|
+
};
|
|
610
|
+
IRemoveSiopSessionArgs: {
|
|
611
|
+
type: string;
|
|
612
|
+
properties: {
|
|
613
|
+
sessionId: {
|
|
614
|
+
type: string;
|
|
615
|
+
};
|
|
616
|
+
additionalProperties: boolean;
|
|
617
|
+
};
|
|
618
|
+
required: string[];
|
|
619
|
+
description: string;
|
|
620
|
+
};
|
|
621
|
+
IAuthenticateWithSiopArgs: {
|
|
622
|
+
type: string;
|
|
623
|
+
properties: {
|
|
624
|
+
sessionId: {
|
|
625
|
+
type: string;
|
|
626
|
+
};
|
|
627
|
+
stateId: {
|
|
628
|
+
type: string;
|
|
629
|
+
};
|
|
630
|
+
redirectUrl: {
|
|
631
|
+
type: string;
|
|
632
|
+
};
|
|
633
|
+
additionalProperties: boolean;
|
|
634
|
+
};
|
|
635
|
+
required: string[];
|
|
636
|
+
description: string;
|
|
637
|
+
};
|
|
638
|
+
IResponse: {
|
|
639
|
+
type: string;
|
|
640
|
+
properties: {
|
|
641
|
+
status: {
|
|
642
|
+
type: string;
|
|
643
|
+
};
|
|
644
|
+
additionalProperties: boolean;
|
|
645
|
+
};
|
|
646
|
+
required: string[];
|
|
647
|
+
description: string;
|
|
648
|
+
};
|
|
649
|
+
IGetSiopAuthenticationRequestFromRpArgs: {
|
|
650
|
+
type: string;
|
|
651
|
+
properties: {
|
|
652
|
+
sessionId: {
|
|
653
|
+
type: string;
|
|
654
|
+
};
|
|
655
|
+
stateId: {
|
|
656
|
+
type: string;
|
|
657
|
+
};
|
|
658
|
+
redirectUrl: {
|
|
659
|
+
type: string;
|
|
660
|
+
};
|
|
661
|
+
additionalProperties: boolean;
|
|
662
|
+
};
|
|
663
|
+
required: string[];
|
|
664
|
+
description: string;
|
|
665
|
+
};
|
|
666
|
+
ParsedAuthenticationRequestURI: {
|
|
667
|
+
type: string;
|
|
668
|
+
properties: {
|
|
669
|
+
jwt: {
|
|
670
|
+
type: string;
|
|
671
|
+
};
|
|
672
|
+
requestPayload: {
|
|
673
|
+
type: string;
|
|
674
|
+
properties: {
|
|
675
|
+
additionalProperties: boolean;
|
|
676
|
+
};
|
|
677
|
+
};
|
|
678
|
+
registration: {
|
|
679
|
+
type: string;
|
|
680
|
+
properties: {
|
|
681
|
+
additionalProperties: boolean;
|
|
682
|
+
};
|
|
683
|
+
};
|
|
684
|
+
additionalProperties: boolean;
|
|
685
|
+
};
|
|
686
|
+
required: string[];
|
|
687
|
+
description: string;
|
|
688
|
+
};
|
|
689
|
+
IGetSiopAuthenticationRequestDetailsArgs: {
|
|
690
|
+
type: string;
|
|
691
|
+
properties: {
|
|
692
|
+
sessionId: {
|
|
693
|
+
type: string;
|
|
694
|
+
};
|
|
695
|
+
verifiedAuthenticationRequest: {
|
|
696
|
+
type: string;
|
|
697
|
+
properties: {
|
|
698
|
+
additionalProperties: boolean;
|
|
699
|
+
};
|
|
700
|
+
};
|
|
701
|
+
credentialFilter: {
|
|
702
|
+
type: string;
|
|
703
|
+
properties: {
|
|
704
|
+
additionalProperties: boolean;
|
|
705
|
+
};
|
|
706
|
+
};
|
|
707
|
+
additionalProperties: boolean;
|
|
708
|
+
};
|
|
709
|
+
required: string[];
|
|
710
|
+
description: string;
|
|
711
|
+
};
|
|
712
|
+
IAuthRequestDetails: {
|
|
713
|
+
type: string;
|
|
714
|
+
properties: {
|
|
715
|
+
id: {
|
|
716
|
+
type: string;
|
|
717
|
+
};
|
|
718
|
+
alsoKnownAs: {
|
|
719
|
+
type: string;
|
|
720
|
+
items: {
|
|
721
|
+
type: string;
|
|
722
|
+
};
|
|
723
|
+
};
|
|
724
|
+
vpResponseOpts: {
|
|
725
|
+
type: string;
|
|
726
|
+
properties: {
|
|
727
|
+
additionalProperties: boolean;
|
|
728
|
+
};
|
|
729
|
+
};
|
|
730
|
+
additionalProperties: boolean;
|
|
731
|
+
};
|
|
732
|
+
required: string[];
|
|
733
|
+
description: string;
|
|
734
|
+
};
|
|
735
|
+
IVerifySiopAuthenticationRequestUriArgs: {
|
|
736
|
+
type: string;
|
|
737
|
+
properties: {
|
|
738
|
+
sessionId: {
|
|
739
|
+
type: string;
|
|
740
|
+
};
|
|
741
|
+
ParsedAuthenticationRequestURI: {
|
|
742
|
+
type: string;
|
|
743
|
+
properties: {
|
|
744
|
+
additionalProperties: boolean;
|
|
745
|
+
};
|
|
746
|
+
};
|
|
747
|
+
additionalProperties: boolean;
|
|
748
|
+
};
|
|
749
|
+
required: string[];
|
|
750
|
+
description: string;
|
|
751
|
+
};
|
|
752
|
+
VerifiedAuthorizationRequest: {
|
|
753
|
+
type: string;
|
|
754
|
+
properties: {
|
|
755
|
+
payload: {
|
|
756
|
+
type: string;
|
|
757
|
+
properties: {
|
|
758
|
+
additionalProperties: boolean;
|
|
759
|
+
};
|
|
760
|
+
};
|
|
761
|
+
presentationDefinitions: {
|
|
762
|
+
type: string;
|
|
763
|
+
properties: {
|
|
764
|
+
additionalProperties: boolean;
|
|
765
|
+
};
|
|
766
|
+
};
|
|
767
|
+
verifyOpts: {
|
|
768
|
+
type: string;
|
|
769
|
+
properties: {
|
|
770
|
+
additionalProperties: boolean;
|
|
771
|
+
};
|
|
772
|
+
};
|
|
773
|
+
additionalProperties: boolean;
|
|
774
|
+
};
|
|
775
|
+
required: string[];
|
|
776
|
+
description: string;
|
|
777
|
+
};
|
|
778
|
+
ISendSiopAuthenticationResponseArgs: {
|
|
779
|
+
type: string;
|
|
780
|
+
properties: {
|
|
781
|
+
sessionId: {
|
|
782
|
+
type: string;
|
|
783
|
+
};
|
|
784
|
+
verifiedAuthenticationRequest: {
|
|
785
|
+
type: string;
|
|
786
|
+
properties: {
|
|
787
|
+
additionalProperties: boolean;
|
|
788
|
+
};
|
|
789
|
+
};
|
|
790
|
+
verifiablePresentationResponse: {
|
|
791
|
+
type: string;
|
|
792
|
+
properties: {
|
|
793
|
+
additionalProperties: boolean;
|
|
794
|
+
};
|
|
795
|
+
};
|
|
796
|
+
additionalProperties: boolean;
|
|
797
|
+
};
|
|
798
|
+
required: string[];
|
|
799
|
+
description: string;
|
|
800
|
+
};
|
|
801
|
+
};
|
|
802
|
+
methods: {
|
|
803
|
+
getSessionForSiop: {
|
|
804
|
+
description: string;
|
|
805
|
+
arguments: {
|
|
806
|
+
$ref: string;
|
|
807
|
+
};
|
|
808
|
+
returnType: string;
|
|
809
|
+
};
|
|
810
|
+
registerSessionForSiop: {
|
|
811
|
+
description: string;
|
|
812
|
+
arguments: {
|
|
813
|
+
$ref: string;
|
|
814
|
+
};
|
|
815
|
+
returnType: string;
|
|
816
|
+
};
|
|
817
|
+
removeSessionForSiop: {
|
|
818
|
+
description: string;
|
|
819
|
+
arguments: {
|
|
820
|
+
$ref: string;
|
|
821
|
+
};
|
|
822
|
+
returnType: string;
|
|
823
|
+
};
|
|
824
|
+
authenticateWithSiop: {
|
|
825
|
+
description: string;
|
|
826
|
+
arguments: {
|
|
827
|
+
$ref: string;
|
|
828
|
+
};
|
|
829
|
+
returnType: {
|
|
830
|
+
$ref: string;
|
|
831
|
+
};
|
|
832
|
+
};
|
|
833
|
+
getSiopAuthenticationRequestFromRP: {
|
|
834
|
+
description: string;
|
|
835
|
+
arguments: {
|
|
836
|
+
$ref: string;
|
|
837
|
+
};
|
|
838
|
+
returnType: {
|
|
839
|
+
$ref: string;
|
|
840
|
+
};
|
|
841
|
+
};
|
|
842
|
+
getSiopAuthenticationRequestDetails: {
|
|
843
|
+
description: string;
|
|
844
|
+
arguments: {
|
|
845
|
+
$ref: string;
|
|
846
|
+
};
|
|
847
|
+
returnType: {
|
|
848
|
+
$ref: string;
|
|
849
|
+
};
|
|
850
|
+
};
|
|
851
|
+
verifySiopAuthenticationRequestURI: {
|
|
852
|
+
description: string;
|
|
853
|
+
arguments: {
|
|
854
|
+
$ref: string;
|
|
855
|
+
};
|
|
856
|
+
returnType: {
|
|
857
|
+
$ref: string;
|
|
858
|
+
};
|
|
859
|
+
};
|
|
860
|
+
sendSiopAuthenticationResponse: {
|
|
861
|
+
description: string;
|
|
862
|
+
arguments: {
|
|
863
|
+
$ref: string;
|
|
864
|
+
};
|
|
865
|
+
returnType: {
|
|
866
|
+
$ref: string;
|
|
867
|
+
};
|
|
868
|
+
};
|
|
869
|
+
};
|
|
870
|
+
};
|
|
871
|
+
};
|
|
183
872
|
readonly methods: ISIOPv2RP;
|
|
184
873
|
constructor(opts: ISiopv2RPOpts);
|
|
185
874
|
setDefaultOpts(rpDefaultOpts: IRPDefaultOpts, context: IRequiredContext): void;
|
|
@@ -193,18 +882,13 @@ declare class SIOPv2RP implements IAgentPlugin {
|
|
|
193
882
|
private siopVerifyAuthResponse;
|
|
194
883
|
private siopImportDefinitions;
|
|
195
884
|
private siopGetRedirectURI;
|
|
196
|
-
getRPInstance({
|
|
885
|
+
getRPInstance({ createWhenNotPresent, queryId, responseRedirectURI }: ISiopRPInstanceArgs, context: IRequiredContext): Promise<RPInstance>;
|
|
197
886
|
getRPOptions(context: IRequiredContext, opts: {
|
|
198
|
-
|
|
887
|
+
queryId?: string;
|
|
199
888
|
responseRedirectURI?: string;
|
|
200
889
|
}): Promise<IRPOptions>;
|
|
201
|
-
getInstanceOpts(
|
|
890
|
+
getInstanceOpts(queryId?: string): IPEXInstanceOptions | undefined;
|
|
202
891
|
private getDefaultOptions;
|
|
203
892
|
}
|
|
204
893
|
|
|
205
|
-
|
|
206
|
-
* @public
|
|
207
|
-
*/
|
|
208
|
-
declare const schema: any;
|
|
209
|
-
|
|
210
|
-
export { type AuthorizationResponseStateWithVerifiedData, type CredentialOpts, type IAuthRequestDetails, type IAuthorizationRequestPayloads, type ICreateAuthRequestArgs, type IDefinitionPair, type IDeleteAuthStateArgs, type IGetAuthRequestStateArgs, type IGetAuthResponseStateArgs, type IGetRedirectUriArgs, type IPEXDefinitionPersistArgs, type IPEXInstanceOptions, type IPEXOptions, type IRPDefaultOpts, type IRPOptions, type IRequiredContext, type ISIOPIdentifierOptions, type ISIOPv2RP, type ISiopRPInstanceArgs, type ISiopv2RPOpts, type IUpdateRequestStateArgs, type IVerifyAuthResponseStateArgs, type ImportDefinitionsArgs, type PerDidResolver, SIOPv2RP, type VerificationPolicies, VerifiedDataMode, schema };
|
|
894
|
+
export { type CredentialOpts, type IAuthRequestDetails, type IAuthorizationRequestPayloads, type ICreateAuthRequestArgs, type IDeleteAuthStateArgs, type IGetAuthRequestStateArgs, type IGetAuthResponseStateArgs, type IGetRedirectUriArgs, type IPEXDefinitionPersistArgs, type IPEXInstanceOptions, type IPresentationOptions, type IRPDefaultOpts, type IRPOptions, type IRequiredContext, type ISIOPIdentifierOptions, type ISIOPv2RP, type ISiopRPInstanceArgs, type ISiopv2RPOpts, type IUpdateRequestStateArgs, type IVerifyAuthResponseStateArgs, type ImportDefinitionsArgs, type PerDidResolver, SIOPv2RP, type VerificationPolicies, VerifiedDataMode, plugin_schema as schema };
|