@sphereon/ssi-sdk.siopv2-oid4vp-rp-auth 0.34.1-feature.SSISDK.50.type.refactor.148 → 0.34.1-feature.SSISDK.57.uni.client.167
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 +323 -329
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +716 -25
- package/dist/index.d.ts +716 -25
- package/dist/index.js +315 -322
- package/dist/index.js.map +1 -1
- package/package.json +17 -17
- package/src/RPInstance.ts +6 -4
- package/src/agent/SIOPv2RP.ts +27 -25
- package/src/functions.ts +4 -4
- package/src/index.ts +1 -1
- package/src/types/ISIOPv2RP.ts +15 -17
package/dist/index.js
CHANGED
|
@@ -1,344 +1,336 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
3
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
4
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
5
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
6
|
-
};
|
|
7
3
|
|
|
8
4
|
// plugin.schema.json
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
sessionId: {
|
|
19
|
-
type: "string"
|
|
20
|
-
},
|
|
21
|
-
additionalProperties: false
|
|
22
|
-
},
|
|
23
|
-
required: ["sessionId"],
|
|
24
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSessionForSiop } "
|
|
5
|
+
var plugin_schema_default = {
|
|
6
|
+
IDidAuthSiopOpAuthenticator: {
|
|
7
|
+
components: {
|
|
8
|
+
schemas: {
|
|
9
|
+
IGetSiopSessionArgs: {
|
|
10
|
+
type: "object",
|
|
11
|
+
properties: {
|
|
12
|
+
sessionId: {
|
|
13
|
+
type: "string"
|
|
25
14
|
},
|
|
26
|
-
|
|
15
|
+
additionalProperties: false
|
|
16
|
+
},
|
|
17
|
+
required: ["sessionId"],
|
|
18
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSessionForSiop } "
|
|
19
|
+
},
|
|
20
|
+
IRegisterSiopSessionArgs: {
|
|
21
|
+
type: "object",
|
|
22
|
+
properties: {
|
|
23
|
+
identifier: {
|
|
27
24
|
type: "object",
|
|
28
25
|
properties: {
|
|
29
|
-
|
|
30
|
-
type: "object",
|
|
31
|
-
properties: {
|
|
32
|
-
did: {
|
|
33
|
-
type: "string"
|
|
34
|
-
},
|
|
35
|
-
alias: {
|
|
36
|
-
type: "string"
|
|
37
|
-
},
|
|
38
|
-
provider: {
|
|
39
|
-
type: "string"
|
|
40
|
-
},
|
|
41
|
-
controllerKeyId: {
|
|
42
|
-
type: "string"
|
|
43
|
-
},
|
|
44
|
-
keys: {
|
|
45
|
-
type: "array",
|
|
46
|
-
items: {
|
|
47
|
-
type: "object",
|
|
48
|
-
properties: {
|
|
49
|
-
additionalProperties: true
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
services: {
|
|
54
|
-
type: "array",
|
|
55
|
-
items: {
|
|
56
|
-
type: "object",
|
|
57
|
-
properties: {
|
|
58
|
-
additionalProperties: true
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
additionalProperties: false,
|
|
64
|
-
required: ["did", "provider", "keys", "services"]
|
|
65
|
-
},
|
|
66
|
-
sessionId: {
|
|
26
|
+
did: {
|
|
67
27
|
type: "string"
|
|
68
28
|
},
|
|
69
|
-
|
|
70
|
-
type: "number"
|
|
71
|
-
},
|
|
72
|
-
additionalProperties: false
|
|
73
|
-
},
|
|
74
|
-
required: ["identifier"],
|
|
75
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.registerSessionForSiop } "
|
|
76
|
-
},
|
|
77
|
-
IRemoveSiopSessionArgs: {
|
|
78
|
-
type: "object",
|
|
79
|
-
properties: {
|
|
80
|
-
sessionId: {
|
|
29
|
+
alias: {
|
|
81
30
|
type: "string"
|
|
82
31
|
},
|
|
83
|
-
|
|
84
|
-
},
|
|
85
|
-
required: ["sessionId"],
|
|
86
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.removeSessionForSiop } "
|
|
87
|
-
},
|
|
88
|
-
IAuthenticateWithSiopArgs: {
|
|
89
|
-
type: "object",
|
|
90
|
-
properties: {
|
|
91
|
-
sessionId: {
|
|
32
|
+
provider: {
|
|
92
33
|
type: "string"
|
|
93
34
|
},
|
|
94
|
-
|
|
35
|
+
controllerKeyId: {
|
|
95
36
|
type: "string"
|
|
96
37
|
},
|
|
97
|
-
|
|
98
|
-
type: "
|
|
38
|
+
keys: {
|
|
39
|
+
type: "array",
|
|
40
|
+
items: {
|
|
41
|
+
type: "object",
|
|
42
|
+
properties: {
|
|
43
|
+
additionalProperties: true
|
|
44
|
+
}
|
|
45
|
+
}
|
|
99
46
|
},
|
|
100
|
-
|
|
47
|
+
services: {
|
|
48
|
+
type: "array",
|
|
49
|
+
items: {
|
|
50
|
+
type: "object",
|
|
51
|
+
properties: {
|
|
52
|
+
additionalProperties: true
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
101
56
|
},
|
|
102
|
-
|
|
103
|
-
|
|
57
|
+
additionalProperties: false,
|
|
58
|
+
required: ["did", "provider", "keys", "services"]
|
|
59
|
+
},
|
|
60
|
+
sessionId: {
|
|
61
|
+
type: "string"
|
|
62
|
+
},
|
|
63
|
+
expiresIn: {
|
|
64
|
+
type: "number"
|
|
65
|
+
},
|
|
66
|
+
additionalProperties: false
|
|
67
|
+
},
|
|
68
|
+
required: ["identifier"],
|
|
69
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.registerSessionForSiop } "
|
|
70
|
+
},
|
|
71
|
+
IRemoveSiopSessionArgs: {
|
|
72
|
+
type: "object",
|
|
73
|
+
properties: {
|
|
74
|
+
sessionId: {
|
|
75
|
+
type: "string"
|
|
76
|
+
},
|
|
77
|
+
additionalProperties: false
|
|
78
|
+
},
|
|
79
|
+
required: ["sessionId"],
|
|
80
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.removeSessionForSiop } "
|
|
81
|
+
},
|
|
82
|
+
IAuthenticateWithSiopArgs: {
|
|
83
|
+
type: "object",
|
|
84
|
+
properties: {
|
|
85
|
+
sessionId: {
|
|
86
|
+
type: "string"
|
|
104
87
|
},
|
|
105
|
-
|
|
88
|
+
stateId: {
|
|
89
|
+
type: "string"
|
|
90
|
+
},
|
|
91
|
+
redirectUrl: {
|
|
92
|
+
type: "string"
|
|
93
|
+
},
|
|
94
|
+
additionalProperties: false
|
|
95
|
+
},
|
|
96
|
+
required: ["sessionId", "stateId", "redirectUrl"],
|
|
97
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.authenticateWithSiop } "
|
|
98
|
+
},
|
|
99
|
+
IResponse: {
|
|
100
|
+
type: "object",
|
|
101
|
+
properties: {
|
|
102
|
+
status: {
|
|
103
|
+
type: "number"
|
|
104
|
+
},
|
|
105
|
+
additionalProperties: true
|
|
106
|
+
},
|
|
107
|
+
required: ["status"],
|
|
108
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.authenticateWithSiop & DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
109
|
+
},
|
|
110
|
+
IGetSiopAuthenticationRequestFromRpArgs: {
|
|
111
|
+
type: "object",
|
|
112
|
+
properties: {
|
|
113
|
+
sessionId: {
|
|
114
|
+
type: "string"
|
|
115
|
+
},
|
|
116
|
+
stateId: {
|
|
117
|
+
type: "string"
|
|
118
|
+
},
|
|
119
|
+
redirectUrl: {
|
|
120
|
+
type: "string"
|
|
121
|
+
},
|
|
122
|
+
additionalProperties: false
|
|
123
|
+
},
|
|
124
|
+
required: ["sessionId", "stateId", "redirectUrl"],
|
|
125
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
126
|
+
},
|
|
127
|
+
ParsedAuthenticationRequestURI: {
|
|
128
|
+
type: "object",
|
|
129
|
+
properties: {
|
|
130
|
+
jwt: {
|
|
131
|
+
type: "string"
|
|
132
|
+
},
|
|
133
|
+
requestPayload: {
|
|
106
134
|
type: "object",
|
|
107
135
|
properties: {
|
|
108
|
-
status: {
|
|
109
|
-
type: "number"
|
|
110
|
-
},
|
|
111
136
|
additionalProperties: true
|
|
112
|
-
}
|
|
113
|
-
required: ["status"],
|
|
114
|
-
description: "Result of {@link DidAuthSiopOpAuthenticator.authenticateWithSiop & DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
137
|
+
}
|
|
115
138
|
},
|
|
116
|
-
|
|
139
|
+
registration: {
|
|
117
140
|
type: "object",
|
|
118
141
|
properties: {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
},
|
|
122
|
-
stateId: {
|
|
123
|
-
type: "string"
|
|
124
|
-
},
|
|
125
|
-
redirectUrl: {
|
|
126
|
-
type: "string"
|
|
127
|
-
},
|
|
128
|
-
additionalProperties: false
|
|
129
|
-
},
|
|
130
|
-
required: ["sessionId", "stateId", "redirectUrl"],
|
|
131
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
142
|
+
additionalProperties: true
|
|
143
|
+
}
|
|
132
144
|
},
|
|
133
|
-
|
|
145
|
+
additionalProperties: false
|
|
146
|
+
},
|
|
147
|
+
required: ["jwt", "requestPayload", "registration"],
|
|
148
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
149
|
+
},
|
|
150
|
+
IGetSiopAuthenticationRequestDetailsArgs: {
|
|
151
|
+
type: "object",
|
|
152
|
+
properties: {
|
|
153
|
+
sessionId: {
|
|
154
|
+
type: "string"
|
|
155
|
+
},
|
|
156
|
+
verifiedAuthenticationRequest: {
|
|
134
157
|
type: "object",
|
|
135
158
|
properties: {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
},
|
|
139
|
-
requestPayload: {
|
|
140
|
-
type: "object",
|
|
141
|
-
properties: {
|
|
142
|
-
additionalProperties: true
|
|
143
|
-
}
|
|
144
|
-
},
|
|
145
|
-
registration: {
|
|
146
|
-
type: "object",
|
|
147
|
-
properties: {
|
|
148
|
-
additionalProperties: true
|
|
149
|
-
}
|
|
150
|
-
},
|
|
151
|
-
additionalProperties: false
|
|
152
|
-
},
|
|
153
|
-
required: ["jwt", "requestPayload", "registration"],
|
|
154
|
-
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestFromRP } "
|
|
159
|
+
additionalProperties: true
|
|
160
|
+
}
|
|
155
161
|
},
|
|
156
|
-
|
|
162
|
+
credentialFilter: {
|
|
157
163
|
type: "object",
|
|
158
164
|
properties: {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
165
|
+
additionalProperties: true
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
additionalProperties: false
|
|
169
|
+
},
|
|
170
|
+
required: ["sessionId", "verifiedAuthenticationRequest"],
|
|
171
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestDetails } "
|
|
172
|
+
},
|
|
173
|
+
IAuthRequestDetails: {
|
|
174
|
+
type: "object",
|
|
175
|
+
properties: {
|
|
176
|
+
id: {
|
|
177
|
+
type: "string"
|
|
178
|
+
},
|
|
179
|
+
alsoKnownAs: {
|
|
180
|
+
type: "array",
|
|
181
|
+
items: {
|
|
182
|
+
type: "string"
|
|
183
|
+
}
|
|
178
184
|
},
|
|
179
|
-
|
|
185
|
+
vpResponseOpts: {
|
|
180
186
|
type: "object",
|
|
181
187
|
properties: {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
},
|
|
185
|
-
alsoKnownAs: {
|
|
186
|
-
type: "array",
|
|
187
|
-
items: {
|
|
188
|
-
type: "string"
|
|
189
|
-
}
|
|
190
|
-
},
|
|
191
|
-
vpResponseOpts: {
|
|
192
|
-
type: "object",
|
|
193
|
-
properties: {
|
|
194
|
-
additionalProperties: true
|
|
195
|
-
}
|
|
196
|
-
},
|
|
197
|
-
additionalProperties: false
|
|
198
|
-
},
|
|
199
|
-
required: ["id", "vpResponseOpts"],
|
|
200
|
-
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestDetails } "
|
|
188
|
+
additionalProperties: true
|
|
189
|
+
}
|
|
201
190
|
},
|
|
202
|
-
|
|
191
|
+
additionalProperties: false
|
|
192
|
+
},
|
|
193
|
+
required: ["id", "vpResponseOpts"],
|
|
194
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.getSiopAuthenticationRequestDetails } "
|
|
195
|
+
},
|
|
196
|
+
IVerifySiopAuthenticationRequestUriArgs: {
|
|
197
|
+
type: "object",
|
|
198
|
+
properties: {
|
|
199
|
+
sessionId: {
|
|
200
|
+
type: "string"
|
|
201
|
+
},
|
|
202
|
+
ParsedAuthenticationRequestURI: {
|
|
203
203
|
type: "object",
|
|
204
204
|
properties: {
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
},
|
|
208
|
-
ParsedAuthenticationRequestURI: {
|
|
209
|
-
type: "object",
|
|
210
|
-
properties: {
|
|
211
|
-
additionalProperties: true
|
|
212
|
-
}
|
|
213
|
-
},
|
|
214
|
-
additionalProperties: false
|
|
215
|
-
},
|
|
216
|
-
required: ["sessionId", "ParsedAuthenticationRequestURI"],
|
|
217
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
205
|
+
additionalProperties: true
|
|
206
|
+
}
|
|
218
207
|
},
|
|
219
|
-
|
|
208
|
+
additionalProperties: false
|
|
209
|
+
},
|
|
210
|
+
required: ["sessionId", "ParsedAuthenticationRequestURI"],
|
|
211
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
212
|
+
},
|
|
213
|
+
VerifiedAuthorizationRequest: {
|
|
214
|
+
type: "object",
|
|
215
|
+
properties: {
|
|
216
|
+
payload: {
|
|
220
217
|
type: "object",
|
|
221
218
|
properties: {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
properties: {
|
|
225
|
-
additionalProperties: true
|
|
226
|
-
}
|
|
227
|
-
},
|
|
228
|
-
presentationDefinitions: {
|
|
229
|
-
type: "object",
|
|
230
|
-
properties: {
|
|
231
|
-
additionalProperties: true
|
|
232
|
-
}
|
|
233
|
-
},
|
|
234
|
-
verifyOpts: {
|
|
235
|
-
type: "object",
|
|
236
|
-
properties: {
|
|
237
|
-
additionalProperties: true
|
|
238
|
-
}
|
|
239
|
-
},
|
|
240
|
-
additionalProperties: false
|
|
241
|
-
},
|
|
242
|
-
required: ["payload", "verifyOpts"],
|
|
243
|
-
description: "Result of {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
219
|
+
additionalProperties: true
|
|
220
|
+
}
|
|
244
221
|
},
|
|
245
|
-
|
|
222
|
+
presentationDefinitions: {
|
|
246
223
|
type: "object",
|
|
247
224
|
properties: {
|
|
248
|
-
|
|
249
|
-
type: "string"
|
|
250
|
-
},
|
|
251
|
-
verifiedAuthenticationRequest: {
|
|
252
|
-
type: "object",
|
|
253
|
-
properties: {
|
|
254
|
-
additionalProperties: true
|
|
255
|
-
}
|
|
256
|
-
},
|
|
257
|
-
verifiablePresentationResponse: {
|
|
258
|
-
type: "object",
|
|
259
|
-
properties: {
|
|
260
|
-
additionalProperties: true
|
|
261
|
-
}
|
|
262
|
-
},
|
|
263
|
-
additionalProperties: false
|
|
264
|
-
},
|
|
265
|
-
required: ["sessionId", "verifiedAuthenticationRequest"],
|
|
266
|
-
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
267
|
-
}
|
|
268
|
-
},
|
|
269
|
-
methods: {
|
|
270
|
-
getSessionForSiop: {
|
|
271
|
-
description: "Get SIOP session",
|
|
272
|
-
arguments: {
|
|
273
|
-
$ref: "#/components/schemas/IGetSiopSessionArgs"
|
|
274
|
-
},
|
|
275
|
-
returnType: "object"
|
|
276
|
-
},
|
|
277
|
-
registerSessionForSiop: {
|
|
278
|
-
description: "Register SIOP session",
|
|
279
|
-
arguments: {
|
|
280
|
-
$ref: "#/components/schemas/IRegisterSiopSessionArgs"
|
|
281
|
-
},
|
|
282
|
-
returnType: "object"
|
|
283
|
-
},
|
|
284
|
-
removeSessionForSiop: {
|
|
285
|
-
description: "Remove SIOP session",
|
|
286
|
-
arguments: {
|
|
287
|
-
$ref: "#/components/schemas/IRemoveSiopSessionArgs"
|
|
288
|
-
},
|
|
289
|
-
returnType: "boolean"
|
|
290
|
-
},
|
|
291
|
-
authenticateWithSiop: {
|
|
292
|
-
description: "Authenticate using DID Auth SIOP",
|
|
293
|
-
arguments: {
|
|
294
|
-
$ref: "#/components/schemas/IAuthenticateWithSiopArgs"
|
|
295
|
-
},
|
|
296
|
-
returnType: {
|
|
297
|
-
$ref: "#/components/schemas/Response"
|
|
225
|
+
additionalProperties: true
|
|
298
226
|
}
|
|
299
227
|
},
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
},
|
|
305
|
-
returnType: {
|
|
306
|
-
$ref: "#/components/schemas/ParsedAuthenticationRequestURI"
|
|
228
|
+
verifyOpts: {
|
|
229
|
+
type: "object",
|
|
230
|
+
properties: {
|
|
231
|
+
additionalProperties: true
|
|
307
232
|
}
|
|
308
233
|
},
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
234
|
+
additionalProperties: false
|
|
235
|
+
},
|
|
236
|
+
required: ["payload", "verifyOpts"],
|
|
237
|
+
description: "Result of {@link DidAuthSiopOpAuthenticator.verifySiopAuthenticationRequestURI } "
|
|
238
|
+
},
|
|
239
|
+
ISendSiopAuthenticationResponseArgs: {
|
|
240
|
+
type: "object",
|
|
241
|
+
properties: {
|
|
242
|
+
sessionId: {
|
|
243
|
+
type: "string"
|
|
317
244
|
},
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
},
|
|
323
|
-
returnType: {
|
|
324
|
-
$ref: "#/components/schemas/VerifiedAuthorizationRequest"
|
|
245
|
+
verifiedAuthenticationRequest: {
|
|
246
|
+
type: "object",
|
|
247
|
+
properties: {
|
|
248
|
+
additionalProperties: true
|
|
325
249
|
}
|
|
326
250
|
},
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
},
|
|
332
|
-
returnType: {
|
|
333
|
-
$ref: "#/components/schemas/IRequiredContext"
|
|
251
|
+
verifiablePresentationResponse: {
|
|
252
|
+
type: "object",
|
|
253
|
+
properties: {
|
|
254
|
+
additionalProperties: true
|
|
334
255
|
}
|
|
335
|
-
}
|
|
256
|
+
},
|
|
257
|
+
additionalProperties: false
|
|
258
|
+
},
|
|
259
|
+
required: ["sessionId", "verifiedAuthenticationRequest"],
|
|
260
|
+
description: "Arguments needed for {@link DidAuthSiopOpAuthenticator.sendSiopAuthenticationResponse } "
|
|
261
|
+
}
|
|
262
|
+
},
|
|
263
|
+
methods: {
|
|
264
|
+
getSessionForSiop: {
|
|
265
|
+
description: "Get SIOP session",
|
|
266
|
+
arguments: {
|
|
267
|
+
$ref: "#/components/schemas/IGetSiopSessionArgs"
|
|
268
|
+
},
|
|
269
|
+
returnType: "object"
|
|
270
|
+
},
|
|
271
|
+
registerSessionForSiop: {
|
|
272
|
+
description: "Register SIOP session",
|
|
273
|
+
arguments: {
|
|
274
|
+
$ref: "#/components/schemas/IRegisterSiopSessionArgs"
|
|
275
|
+
},
|
|
276
|
+
returnType: "object"
|
|
277
|
+
},
|
|
278
|
+
removeSessionForSiop: {
|
|
279
|
+
description: "Remove SIOP session",
|
|
280
|
+
arguments: {
|
|
281
|
+
$ref: "#/components/schemas/IRemoveSiopSessionArgs"
|
|
282
|
+
},
|
|
283
|
+
returnType: "boolean"
|
|
284
|
+
},
|
|
285
|
+
authenticateWithSiop: {
|
|
286
|
+
description: "Authenticate using DID Auth SIOP",
|
|
287
|
+
arguments: {
|
|
288
|
+
$ref: "#/components/schemas/IAuthenticateWithSiopArgs"
|
|
289
|
+
},
|
|
290
|
+
returnType: {
|
|
291
|
+
$ref: "#/components/schemas/Response"
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
getSiopAuthenticationRequestFromRP: {
|
|
295
|
+
description: "Get authentication request from RP",
|
|
296
|
+
arguments: {
|
|
297
|
+
$ref: "#/components/schemas/IGetSiopAuthenticationRequestFromRpArgs"
|
|
298
|
+
},
|
|
299
|
+
returnType: {
|
|
300
|
+
$ref: "#/components/schemas/ParsedAuthenticationRequestURI"
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
getSiopAuthenticationRequestDetails: {
|
|
304
|
+
description: "Get authentication request details",
|
|
305
|
+
arguments: {
|
|
306
|
+
$ref: "#/components/schemas/IGetSiopAuthenticationRequestDetailsArgs"
|
|
307
|
+
},
|
|
308
|
+
returnType: {
|
|
309
|
+
$ref: "#/components/schemas/IAuthRequestDetails"
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
verifySiopAuthenticationRequestURI: {
|
|
313
|
+
description: "Verify authentication request URI",
|
|
314
|
+
arguments: {
|
|
315
|
+
$ref: "#/components/schemas/IVerifySiopAuthenticationRequestUriArgs"
|
|
316
|
+
},
|
|
317
|
+
returnType: {
|
|
318
|
+
$ref: "#/components/schemas/VerifiedAuthorizationRequest"
|
|
319
|
+
}
|
|
320
|
+
},
|
|
321
|
+
sendSiopAuthenticationResponse: {
|
|
322
|
+
description: "Send authentication response",
|
|
323
|
+
arguments: {
|
|
324
|
+
$ref: "#/components/schemas/ISendSiopAuthenticationResponseArgs"
|
|
325
|
+
},
|
|
326
|
+
returnType: {
|
|
327
|
+
$ref: "#/components/schemas/IRequiredContext"
|
|
336
328
|
}
|
|
337
329
|
}
|
|
338
330
|
}
|
|
339
|
-
}
|
|
331
|
+
}
|
|
340
332
|
}
|
|
341
|
-
}
|
|
333
|
+
};
|
|
342
334
|
|
|
343
335
|
// src/agent/SIOPv2RP.ts
|
|
344
336
|
import { AuthorizationResponseStateStatus, decodeUriAsJson } from "@sphereon/did-auth-siop";
|
|
@@ -417,11 +409,11 @@ async function createRPBuilder(args) {
|
|
|
417
409
|
const { identifierOpts } = rpOpts;
|
|
418
410
|
let definition = args.definition;
|
|
419
411
|
let dcqlQuery = args.dcql;
|
|
420
|
-
if (!definition && pexOpts && pexOpts.
|
|
412
|
+
if (!definition && pexOpts && pexOpts.queryId) {
|
|
421
413
|
const presentationDefinitionItems = await context.agent.pdmGetDefinitions({
|
|
422
414
|
filter: [
|
|
423
415
|
{
|
|
424
|
-
queryId: pexOpts.
|
|
416
|
+
queryId: pexOpts.queryId,
|
|
425
417
|
version: pexOpts.version,
|
|
426
418
|
tenantId: pexOpts.tenantId
|
|
427
419
|
}
|
|
@@ -429,8 +421,8 @@ async function createRPBuilder(args) {
|
|
|
429
421
|
});
|
|
430
422
|
if (presentationDefinitionItems.length > 0) {
|
|
431
423
|
const presentationDefinitionItem = presentationDefinitionItems[0];
|
|
432
|
-
if (!dcqlQuery
|
|
433
|
-
dcqlQuery = presentationDefinitionItem.
|
|
424
|
+
if (!dcqlQuery) {
|
|
425
|
+
dcqlQuery = presentationDefinitionItem.dcqlQuery;
|
|
434
426
|
}
|
|
435
427
|
}
|
|
436
428
|
}
|
|
@@ -603,7 +595,7 @@ var RPInstance = class {
|
|
|
603
595
|
return this.definitionId !== void 0;
|
|
604
596
|
}
|
|
605
597
|
get definitionId() {
|
|
606
|
-
return this.pexOptions?.
|
|
598
|
+
return this.pexOptions?.queryId;
|
|
607
599
|
}
|
|
608
600
|
async getPresentationDefinition(context) {
|
|
609
601
|
return this.definitionId ? await context.agent.pexStoreGetDefinition({
|
|
@@ -612,7 +604,7 @@ var RPInstance = class {
|
|
|
612
604
|
}) : void 0;
|
|
613
605
|
}
|
|
614
606
|
async createAuthorizationRequestURI(createArgs, context) {
|
|
615
|
-
const { correlationId, claims, requestByReferenceURI, responseURI, responseURIType } = createArgs;
|
|
607
|
+
const { correlationId, queryId, claims, requestByReferenceURI, responseURI, responseURIType, callback } = createArgs;
|
|
616
608
|
const nonce = createArgs.nonce ?? uuidv4();
|
|
617
609
|
const state = createArgs.state ?? correlationId;
|
|
618
610
|
let jwtIssuer;
|
|
@@ -640,13 +632,15 @@ var RPInstance = class {
|
|
|
640
632
|
return await this.get(context).then((rp) => rp.createAuthorizationRequestURI({
|
|
641
633
|
version: getRequestVersion(this.rpOptions),
|
|
642
634
|
correlationId,
|
|
635
|
+
queryId,
|
|
643
636
|
nonce,
|
|
644
637
|
state,
|
|
645
638
|
claims,
|
|
646
639
|
requestByReferenceURI,
|
|
647
640
|
responseURI,
|
|
648
641
|
responseURIType,
|
|
649
|
-
jwtIssuer
|
|
642
|
+
jwtIssuer,
|
|
643
|
+
callback
|
|
650
644
|
}));
|
|
651
645
|
}
|
|
652
646
|
async createAuthorizationRequest(createArgs, context) {
|
|
@@ -694,7 +688,7 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
694
688
|
opts;
|
|
695
689
|
static _DEFAULT_OPTS_KEY = "_default";
|
|
696
690
|
instances = /* @__PURE__ */ new Map();
|
|
697
|
-
schema =
|
|
691
|
+
schema = plugin_schema_default.IDidAuthSiopOpAuthenticator;
|
|
698
692
|
methods = {
|
|
699
693
|
siopCreateAuthRequestURI: this.createAuthorizationRequestURI.bind(this),
|
|
700
694
|
siopCreateAuthRequestPayloads: this.createAuthorizationRequestPayloads.bind(this),
|
|
@@ -724,30 +718,32 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
724
718
|
}
|
|
725
719
|
async createAuthorizationRequestURI(createArgs, context) {
|
|
726
720
|
return await this.getRPInstance({
|
|
727
|
-
|
|
728
|
-
|
|
721
|
+
responseRedirectURI: createArgs.responseRedirectURI,
|
|
722
|
+
...createArgs.useQueryIdInstance === true && {
|
|
723
|
+
queryId: createArgs.queryId
|
|
724
|
+
}
|
|
729
725
|
}, context).then((rp) => rp.createAuthorizationRequestURI(createArgs, context)).then((URI) => URI.encodedUri);
|
|
730
726
|
}
|
|
731
727
|
async createAuthorizationRequestPayloads(createArgs, context) {
|
|
732
728
|
return await this.getRPInstance({
|
|
733
|
-
|
|
729
|
+
queryId: createArgs.queryId
|
|
734
730
|
}, context).then((rp) => rp.createAuthorizationRequest(createArgs, context)).then(async (request) => {
|
|
735
731
|
const authRequest = {
|
|
736
732
|
authorizationRequest: request.payload,
|
|
737
733
|
requestObject: await request.requestObjectJwt(),
|
|
738
|
-
requestObjectDecoded:
|
|
734
|
+
requestObjectDecoded: request.requestObject?.getPayload()
|
|
739
735
|
};
|
|
740
736
|
return authRequest;
|
|
741
737
|
});
|
|
742
738
|
}
|
|
743
739
|
async siopGetRequestState(args, context) {
|
|
744
740
|
return await this.getRPInstance({
|
|
745
|
-
|
|
741
|
+
queryId: args.queryId
|
|
746
742
|
}, context).then((rp) => rp.get(context).then((rp2) => rp2.sessionManager.getRequestStateByCorrelationId(args.correlationId, args.errorOnNotFound)));
|
|
747
743
|
}
|
|
748
744
|
async siopGetResponseState(args, context) {
|
|
749
745
|
const rpInstance = await this.getRPInstance({
|
|
750
|
-
|
|
746
|
+
queryId: args.queryId
|
|
751
747
|
}, context);
|
|
752
748
|
const authorizationResponseState = await rpInstance.get(context).then((rp) => rp.sessionManager.getResponseStateByCorrelationId(args.correlationId, args.errorOnNotFound));
|
|
753
749
|
if (authorizationResponseState === void 0) {
|
|
@@ -800,11 +796,11 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
800
796
|
}
|
|
801
797
|
presentationOrClaimsFrom = /* @__PURE__ */ __name((presentationDecoded) => CredentialMapper2.isSdJwtDecodedCredential(presentationDecoded) ? presentationDecoded.decodedPayload : CredentialMapper2.toUniformPresentation(presentationDecoded), "presentationOrClaimsFrom");
|
|
802
798
|
async siopUpdateRequestState(args, context) {
|
|
803
|
-
if (args.state !== "
|
|
804
|
-
throw Error(`Only '
|
|
799
|
+
if (args.state !== "authorization_request_created") {
|
|
800
|
+
throw Error(`Only 'authorization_request_created' status is supported for this method at this point`);
|
|
805
801
|
}
|
|
806
802
|
return await this.getRPInstance({
|
|
807
|
-
|
|
803
|
+
queryId: args.queryId
|
|
808
804
|
}, context).then((rp) => rp.get(context).then(async (rp2) => {
|
|
809
805
|
await rp2.signalAuthRequestRetrieved({
|
|
810
806
|
correlationId: args.correlationId,
|
|
@@ -815,7 +811,7 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
815
811
|
}
|
|
816
812
|
async siopDeleteState(args, context) {
|
|
817
813
|
return await this.getRPInstance({
|
|
818
|
-
|
|
814
|
+
queryId: args.queryId
|
|
819
815
|
}, context).then((rp) => rp.get(context).then((rp2) => rp2.sessionManager.deleteStateForCorrelationId(args.correlationId))).then(() => true);
|
|
820
816
|
}
|
|
821
817
|
async siopVerifyAuthResponse(args, context) {
|
|
@@ -824,7 +820,7 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
824
820
|
}
|
|
825
821
|
const authResponse = typeof args.authorizationResponse === "string" ? decodeUriAsJson(args.authorizationResponse) : args.authorizationResponse;
|
|
826
822
|
return await this.getRPInstance({
|
|
827
|
-
|
|
823
|
+
queryId: args.queryId
|
|
828
824
|
}, context).then((rp) => rp.get(context).then((rp2) => rp2.verifyAuthorizationResponse(authResponse, {
|
|
829
825
|
correlationId: args.correlationId,
|
|
830
826
|
...args.dcqlQuery ? {
|
|
@@ -852,7 +848,7 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
852
848
|
}));
|
|
853
849
|
}
|
|
854
850
|
async siopGetRedirectURI(args, context) {
|
|
855
|
-
const instanceId = args.
|
|
851
|
+
const instanceId = args.queryId ?? _SIOPv2RP._DEFAULT_OPTS_KEY;
|
|
856
852
|
if (this.instances.has(instanceId)) {
|
|
857
853
|
const rpInstance = this.instances.get(instanceId);
|
|
858
854
|
if (rpInstance !== void 0) {
|
|
@@ -868,12 +864,12 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
868
864
|
}
|
|
869
865
|
return void 0;
|
|
870
866
|
}
|
|
871
|
-
async getRPInstance({
|
|
872
|
-
const instanceId =
|
|
867
|
+
async getRPInstance({ queryId, responseRedirectURI }, context) {
|
|
868
|
+
const instanceId = queryId ?? _SIOPv2RP._DEFAULT_OPTS_KEY;
|
|
873
869
|
if (!this.instances.has(instanceId)) {
|
|
874
|
-
const instanceOpts = this.getInstanceOpts(
|
|
870
|
+
const instanceOpts = this.getInstanceOpts(queryId);
|
|
875
871
|
const rpOpts = await this.getRPOptions(context, {
|
|
876
|
-
|
|
872
|
+
queryId,
|
|
877
873
|
responseRedirectURI
|
|
878
874
|
});
|
|
879
875
|
if (!rpOpts.identifierOpts.resolveOpts?.resolver || typeof rpOpts.identifierOpts.resolveOpts.resolver.resolve !== "function") {
|
|
@@ -885,7 +881,7 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
885
881
|
...rpOpts.identifierOpts.resolveOpts
|
|
886
882
|
};
|
|
887
883
|
}
|
|
888
|
-
console.log("Using agent DID resolver for RP instance with definition id " +
|
|
884
|
+
console.log("Using agent DID resolver for RP instance with definition id " + queryId);
|
|
889
885
|
rpOpts.identifierOpts.resolveOpts.resolver = getAgentResolver2(context, {
|
|
890
886
|
uniresolverResolution: true,
|
|
891
887
|
localResolution: true,
|
|
@@ -904,10 +900,10 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
904
900
|
return rpInstance;
|
|
905
901
|
}
|
|
906
902
|
async getRPOptions(context, opts) {
|
|
907
|
-
const {
|
|
908
|
-
const options = this.getInstanceOpts(
|
|
903
|
+
const { queryId, responseRedirectURI } = opts;
|
|
904
|
+
const options = this.getInstanceOpts(queryId)?.rpOpts ?? this.opts.defaultOpts;
|
|
909
905
|
if (!options) {
|
|
910
|
-
throw Error(`Could not get specific nor default options for definition ${
|
|
906
|
+
throw Error(`Could not get specific nor default options for definition ${queryId}`);
|
|
911
907
|
}
|
|
912
908
|
if (this.opts.defaultOpts) {
|
|
913
909
|
if (!options.identifierOpts) {
|
|
@@ -941,18 +937,18 @@ var SIOPv2RP = class _SIOPv2RP {
|
|
|
941
937
|
}
|
|
942
938
|
getInstanceOpts(definitionId) {
|
|
943
939
|
if (!this.opts.instanceOpts) return void 0;
|
|
944
|
-
const instanceOpt = definitionId ? this.opts.instanceOpts.find((i) => i.
|
|
940
|
+
const instanceOpt = definitionId ? this.opts.instanceOpts.find((i) => i.queryId === definitionId) : void 0;
|
|
945
941
|
return instanceOpt ?? this.getDefaultOptions(definitionId);
|
|
946
942
|
}
|
|
947
943
|
getDefaultOptions(definitionId) {
|
|
948
944
|
if (!this.opts.instanceOpts) return void 0;
|
|
949
|
-
const defaultOptions = this.opts.instanceOpts.find((i) => i.
|
|
945
|
+
const defaultOptions = this.opts.instanceOpts.find((i) => i.queryId === "default");
|
|
950
946
|
if (defaultOptions) {
|
|
951
947
|
const clonedOptions = {
|
|
952
948
|
...defaultOptions
|
|
953
949
|
};
|
|
954
950
|
if (definitionId !== void 0) {
|
|
955
|
-
clonedOptions.
|
|
951
|
+
clonedOptions.queryId = definitionId;
|
|
956
952
|
}
|
|
957
953
|
return clonedOptions;
|
|
958
954
|
}
|
|
@@ -967,12 +963,9 @@ var VerifiedDataMode = /* @__PURE__ */ (function(VerifiedDataMode2) {
|
|
|
967
963
|
VerifiedDataMode2["CREDENTIAL_SUBJECT_FLATTENED"] = "cs-flat";
|
|
968
964
|
return VerifiedDataMode2;
|
|
969
965
|
})({});
|
|
970
|
-
|
|
971
|
-
// src/index.ts
|
|
972
|
-
var schema = require_plugin_schema();
|
|
973
966
|
export {
|
|
974
967
|
SIOPv2RP,
|
|
975
968
|
VerifiedDataMode,
|
|
976
|
-
schema
|
|
969
|
+
plugin_schema_default as schema
|
|
977
970
|
};
|
|
978
971
|
//# sourceMappingURL=index.js.map
|