@eudiplo/cli 8.1.0-main.a6a67b3 → 8.1.0-main.af23b1d
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/README.md +1 -1
- package/dist/commands/completion/action.js +1 -1
- package/dist/commands/completion/action.js.map +1 -1
- package/dist/commands/completion/index.d.ts.map +1 -1
- package/dist/commands/completion/index.js +6 -1
- package/dist/commands/completion/index.js.map +1 -1
- package/dist/commands/config/action.d.ts.map +1 -1
- package/dist/commands/config/action.js.map +1 -1
- package/dist/commands/config/portability/migrations.spec.js +5 -3
- package/dist/commands/config/portability/migrations.spec.js.map +1 -1
- package/dist/commands/config/validate/schemas.js.map +1 -1
- package/dist/commands/config/validate/validator.js +7 -4
- package/dist/commands/config/validate/validator.js.map +1 -1
- package/dist/commands/instance/action.d.ts.map +1 -1
- package/dist/commands/instance/action.js.map +1 -1
- package/dist/index.js +2470 -272
- package/dist/runtime.js +1 -1
- package/dist/runtime.js.map +1 -1
- package/dist/services/cli-config.d.ts.map +1 -1
- package/dist/services/cli-config.js +5 -2
- package/dist/services/cli-config.js.map +1 -1
- package/dist/services/compose-project.d.ts.map +1 -1
- package/dist/services/compose-project.js +12 -7
- package/dist/services/compose-project.js.map +1 -1
- package/dist/services/compose-upgrade.js +1 -1
- package/dist/services/compose-upgrade.js.map +1 -1
- package/dist/services/diagnostics.d.ts.map +1 -1
- package/dist/services/diagnostics.js +14 -9
- package/dist/services/diagnostics.js.map +1 -1
- package/dist/services/kubectl.d.ts.map +1 -1
- package/dist/services/kubectl.js +1 -6
- package/dist/services/kubectl.js.map +1 -1
- package/package.json +5 -3
- package/templates/demo-config/trust-lists/trustlist-580831bc-ef11-43f4-a3be-a2b6bf1b29a3-config.json +1 -97
- package/templates/docker-compose.yml +2 -2
- package/templates/schemas/DCQL.schema.json +30 -4
- package/templates/schemas/IssuanceConfig.schema.json +13 -0
- package/templates/schemas/IssuanceConfigFile.schema.json +663 -1
- package/templates/schemas/PresentationConfigCreateDto.schema.json +33 -10
- package/templates/schemas/PresentationConfigFile.schema.json +1442 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"properties": {
|
|
10
10
|
"$schema": {
|
|
11
11
|
"type": "string",
|
|
12
|
-
"const": "https://eudiplo.dev/schemas/
|
|
12
|
+
"const": "https://eudiplo.dev/schemas/v2/IssuanceConfigFile.schema.json"
|
|
13
13
|
},
|
|
14
14
|
"metadata": {
|
|
15
15
|
"type": "object",
|
|
@@ -39,6 +39,668 @@
|
|
|
39
39
|
"spec"
|
|
40
40
|
],
|
|
41
41
|
"additionalProperties": false
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
45
|
+
"$id": "https://eudiplo.dev/schemas/v1/IssuanceConfigFile.schema.json",
|
|
46
|
+
"title": "IssuanceConfigFile",
|
|
47
|
+
"type": "object",
|
|
48
|
+
"properties": {
|
|
49
|
+
"$schema": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"const": "https://eudiplo.dev/schemas/v1/IssuanceConfigFile.schema.json"
|
|
52
|
+
},
|
|
53
|
+
"metadata": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"properties": {
|
|
56
|
+
"generation": {
|
|
57
|
+
"type": "integer",
|
|
58
|
+
"minimum": 1,
|
|
59
|
+
"description": "Monotonically increasing configuration generation."
|
|
60
|
+
},
|
|
61
|
+
"ownership": {
|
|
62
|
+
"type": "string",
|
|
63
|
+
"enum": [
|
|
64
|
+
"unmanaged",
|
|
65
|
+
"file-managed"
|
|
66
|
+
],
|
|
67
|
+
"description": "Requested ownership recorded when the document is applied."
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"additionalProperties": false
|
|
71
|
+
},
|
|
72
|
+
"spec": {
|
|
73
|
+
"$ref": "#/$defs/IssuanceConfig"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": [
|
|
77
|
+
"$schema",
|
|
78
|
+
"spec"
|
|
79
|
+
],
|
|
80
|
+
"additionalProperties": false,
|
|
81
|
+
"$defs": {
|
|
82
|
+
"IssuanceConfig": {
|
|
83
|
+
"type": "object",
|
|
84
|
+
"properties": {
|
|
85
|
+
"batchSize": {
|
|
86
|
+
"description": "Optional issuance batch size.",
|
|
87
|
+
"type": "integer",
|
|
88
|
+
"minimum": 1,
|
|
89
|
+
"maximum": 9007199254740991
|
|
90
|
+
},
|
|
91
|
+
"dPopRequired": {
|
|
92
|
+
"description": "Require DPoP proofs for issuance endpoints.",
|
|
93
|
+
"type": "boolean"
|
|
94
|
+
},
|
|
95
|
+
"walletAttestationRequired": {
|
|
96
|
+
"description": "Default wallet attestation requirement for managed authorization servers.",
|
|
97
|
+
"type": "boolean"
|
|
98
|
+
},
|
|
99
|
+
"walletProviderTrustLists": {
|
|
100
|
+
"description": "Shared wallet provider trust lists for key attestations and default authorization server wallet authentication.",
|
|
101
|
+
"type": "array",
|
|
102
|
+
"items": {
|
|
103
|
+
"type": "object",
|
|
104
|
+
"properties": {
|
|
105
|
+
"trustListId": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"minLength": 1
|
|
108
|
+
},
|
|
109
|
+
"url": {
|
|
110
|
+
"description": "URL of the wallet provider trust list.",
|
|
111
|
+
"type": "string",
|
|
112
|
+
"format": "uri"
|
|
113
|
+
},
|
|
114
|
+
"verifierKey": {
|
|
115
|
+
"description": "Optional verifier key material used for trust list verification.",
|
|
116
|
+
"type": "object",
|
|
117
|
+
"propertyNames": {
|
|
118
|
+
"type": "string"
|
|
119
|
+
},
|
|
120
|
+
"additionalProperties": {}
|
|
121
|
+
},
|
|
122
|
+
"verifierX509Der": {
|
|
123
|
+
"description": "Optional verifier certificate in DER/base64 form.",
|
|
124
|
+
"type": "string"
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
"additionalProperties": false
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"signingKeyId": {
|
|
131
|
+
"description": "Default signing key chain id for credential issuance.",
|
|
132
|
+
"type": "string",
|
|
133
|
+
"minLength": 1
|
|
134
|
+
},
|
|
135
|
+
"authorizationServers": {
|
|
136
|
+
"minItems": 1,
|
|
137
|
+
"type": "array",
|
|
138
|
+
"items": {
|
|
139
|
+
"oneOf": [
|
|
140
|
+
{
|
|
141
|
+
"type": "object",
|
|
142
|
+
"properties": {
|
|
143
|
+
"type": {
|
|
144
|
+
"type": "string",
|
|
145
|
+
"const": "external",
|
|
146
|
+
"description": "Use an externally managed authorization server."
|
|
147
|
+
},
|
|
148
|
+
"id": {
|
|
149
|
+
"type": "string",
|
|
150
|
+
"minLength": 1,
|
|
151
|
+
"description": "Authorization server identifier."
|
|
152
|
+
},
|
|
153
|
+
"issuer": {
|
|
154
|
+
"type": "string",
|
|
155
|
+
"format": "uri",
|
|
156
|
+
"description": "Issuer URL for the external authorization server."
|
|
157
|
+
},
|
|
158
|
+
"sessionBinding": {
|
|
159
|
+
"description": "Explicit mapping from an external access-token claim to an existing issuance session.",
|
|
160
|
+
"type": "object",
|
|
161
|
+
"properties": {
|
|
162
|
+
"method": {
|
|
163
|
+
"type": "string",
|
|
164
|
+
"const": "access_token_claim",
|
|
165
|
+
"description": "Read the correlation value from a configured access-token claim."
|
|
166
|
+
},
|
|
167
|
+
"claim": {
|
|
168
|
+
"type": "string",
|
|
169
|
+
"minLength": 1,
|
|
170
|
+
"description": "Claim name that contains the issuance-session correlation value."
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
"required": [
|
|
174
|
+
"method",
|
|
175
|
+
"claim"
|
|
176
|
+
],
|
|
177
|
+
"additionalProperties": false
|
|
178
|
+
},
|
|
179
|
+
"label": {
|
|
180
|
+
"description": "Optional display label for UI selection.",
|
|
181
|
+
"type": "string"
|
|
182
|
+
},
|
|
183
|
+
"enabled": {
|
|
184
|
+
"description": "Whether this authorization server entry is enabled.",
|
|
185
|
+
"type": "boolean"
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
"required": [
|
|
189
|
+
"type",
|
|
190
|
+
"id",
|
|
191
|
+
"issuer"
|
|
192
|
+
],
|
|
193
|
+
"additionalProperties": false
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"type": "object",
|
|
197
|
+
"properties": {
|
|
198
|
+
"type": {
|
|
199
|
+
"type": "string",
|
|
200
|
+
"const": "oid4vp",
|
|
201
|
+
"description": "Use OID4VP-based authorization server chaining."
|
|
202
|
+
},
|
|
203
|
+
"id": {
|
|
204
|
+
"type": "string",
|
|
205
|
+
"minLength": 1,
|
|
206
|
+
"description": "Authorization server identifier."
|
|
207
|
+
},
|
|
208
|
+
"presentationConfigId": {
|
|
209
|
+
"type": "string",
|
|
210
|
+
"minLength": 1,
|
|
211
|
+
"description": "Presentation configuration id used during authorization."
|
|
212
|
+
},
|
|
213
|
+
"immediateWalletRedirect": {
|
|
214
|
+
"description": "Redirect wallets immediately after authorization response creation.",
|
|
215
|
+
"type": "boolean"
|
|
216
|
+
},
|
|
217
|
+
"token": {
|
|
218
|
+
"description": "Optional token issuance settings.",
|
|
219
|
+
"type": "object",
|
|
220
|
+
"properties": {
|
|
221
|
+
"lifetimeSeconds": {
|
|
222
|
+
"description": "Access token lifetime in seconds.",
|
|
223
|
+
"type": "number",
|
|
224
|
+
"minimum": 60
|
|
225
|
+
},
|
|
226
|
+
"signingKeyId": {
|
|
227
|
+
"description": "Optional key chain id used to sign issued tokens.",
|
|
228
|
+
"type": "string",
|
|
229
|
+
"minLength": 1
|
|
230
|
+
},
|
|
231
|
+
"refreshTokenEnabled": {
|
|
232
|
+
"description": "Enable issuing refresh tokens.",
|
|
233
|
+
"type": "boolean"
|
|
234
|
+
},
|
|
235
|
+
"refreshTokenExpiresInSeconds": {
|
|
236
|
+
"description": "Refresh token lifetime in seconds.",
|
|
237
|
+
"type": "number",
|
|
238
|
+
"minimum": 60
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
"additionalProperties": false
|
|
242
|
+
},
|
|
243
|
+
"requireDPoP": {
|
|
244
|
+
"description": "Require DPoP proofs for token/credential requests.",
|
|
245
|
+
"type": "boolean"
|
|
246
|
+
},
|
|
247
|
+
"walletAttestationRequired": {
|
|
248
|
+
"description": "Require wallet attestation for this authorization server.",
|
|
249
|
+
"type": "boolean"
|
|
250
|
+
},
|
|
251
|
+
"walletProviderTrustLists": {
|
|
252
|
+
"description": "Optional wallet provider trust list references for this authorization server.",
|
|
253
|
+
"type": "array",
|
|
254
|
+
"items": {
|
|
255
|
+
"type": "object",
|
|
256
|
+
"properties": {
|
|
257
|
+
"trustListId": {
|
|
258
|
+
"type": "string",
|
|
259
|
+
"minLength": 1
|
|
260
|
+
},
|
|
261
|
+
"url": {
|
|
262
|
+
"description": "URL of the wallet provider trust list.",
|
|
263
|
+
"type": "string",
|
|
264
|
+
"format": "uri"
|
|
265
|
+
},
|
|
266
|
+
"verifierKey": {
|
|
267
|
+
"description": "Optional verifier key material used for trust list verification.",
|
|
268
|
+
"type": "object",
|
|
269
|
+
"propertyNames": {
|
|
270
|
+
"type": "string"
|
|
271
|
+
},
|
|
272
|
+
"additionalProperties": {}
|
|
273
|
+
},
|
|
274
|
+
"verifierX509Der": {
|
|
275
|
+
"description": "Optional verifier certificate in DER/base64 form.",
|
|
276
|
+
"type": "string"
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
"additionalProperties": false
|
|
280
|
+
}
|
|
281
|
+
},
|
|
282
|
+
"label": {
|
|
283
|
+
"description": "Optional display label for UI selection.",
|
|
284
|
+
"type": "string"
|
|
285
|
+
},
|
|
286
|
+
"enabled": {
|
|
287
|
+
"description": "Whether this authorization server entry is enabled.",
|
|
288
|
+
"type": "boolean"
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
"required": [
|
|
292
|
+
"type",
|
|
293
|
+
"id",
|
|
294
|
+
"presentationConfigId"
|
|
295
|
+
],
|
|
296
|
+
"additionalProperties": false
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
"type": "object",
|
|
300
|
+
"properties": {
|
|
301
|
+
"type": {
|
|
302
|
+
"type": "string",
|
|
303
|
+
"const": "chained",
|
|
304
|
+
"description": "Use upstream OIDC as authorization source."
|
|
305
|
+
},
|
|
306
|
+
"id": {
|
|
307
|
+
"type": "string",
|
|
308
|
+
"minLength": 1,
|
|
309
|
+
"description": "Authorization server identifier."
|
|
310
|
+
},
|
|
311
|
+
"upstream": {
|
|
312
|
+
"type": "object",
|
|
313
|
+
"properties": {
|
|
314
|
+
"issuer": {
|
|
315
|
+
"type": "string",
|
|
316
|
+
"format": "uri",
|
|
317
|
+
"description": "Upstream OIDC issuer URL."
|
|
318
|
+
},
|
|
319
|
+
"clientId": {
|
|
320
|
+
"type": "string",
|
|
321
|
+
"minLength": 1,
|
|
322
|
+
"description": "Client id for upstream OIDC authentication."
|
|
323
|
+
},
|
|
324
|
+
"clientSecret": {
|
|
325
|
+
"description": "Optional client secret for upstream OIDC authentication.",
|
|
326
|
+
"type": "string",
|
|
327
|
+
"minLength": 1
|
|
328
|
+
},
|
|
329
|
+
"scopes": {
|
|
330
|
+
"description": "Optional scopes requested from the upstream issuer.",
|
|
331
|
+
"type": "array",
|
|
332
|
+
"items": {
|
|
333
|
+
"type": "string",
|
|
334
|
+
"minLength": 1
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
"required": [
|
|
339
|
+
"issuer",
|
|
340
|
+
"clientId"
|
|
341
|
+
],
|
|
342
|
+
"additionalProperties": false,
|
|
343
|
+
"description": "Upstream OIDC connection settings."
|
|
344
|
+
},
|
|
345
|
+
"token": {
|
|
346
|
+
"description": "Optional token issuance settings.",
|
|
347
|
+
"type": "object",
|
|
348
|
+
"properties": {
|
|
349
|
+
"lifetimeSeconds": {
|
|
350
|
+
"description": "Access token lifetime in seconds.",
|
|
351
|
+
"type": "number",
|
|
352
|
+
"minimum": 60
|
|
353
|
+
},
|
|
354
|
+
"signingKeyId": {
|
|
355
|
+
"description": "Optional key chain id used to sign issued tokens.",
|
|
356
|
+
"type": "string",
|
|
357
|
+
"minLength": 1
|
|
358
|
+
},
|
|
359
|
+
"refreshTokenEnabled": {
|
|
360
|
+
"description": "Enable issuing refresh tokens.",
|
|
361
|
+
"type": "boolean"
|
|
362
|
+
},
|
|
363
|
+
"refreshTokenExpiresInSeconds": {
|
|
364
|
+
"description": "Refresh token lifetime in seconds.",
|
|
365
|
+
"type": "number",
|
|
366
|
+
"minimum": 60
|
|
367
|
+
}
|
|
368
|
+
},
|
|
369
|
+
"additionalProperties": false
|
|
370
|
+
},
|
|
371
|
+
"requireDPoP": {
|
|
372
|
+
"description": "Require DPoP proofs for token/credential requests.",
|
|
373
|
+
"type": "boolean"
|
|
374
|
+
},
|
|
375
|
+
"walletAttestationRequired": {
|
|
376
|
+
"description": "Require wallet attestation for this authorization server.",
|
|
377
|
+
"type": "boolean"
|
|
378
|
+
},
|
|
379
|
+
"walletProviderTrustLists": {
|
|
380
|
+
"description": "Optional wallet provider trust list references for this authorization server.",
|
|
381
|
+
"type": "array",
|
|
382
|
+
"items": {
|
|
383
|
+
"type": "object",
|
|
384
|
+
"properties": {
|
|
385
|
+
"trustListId": {
|
|
386
|
+
"type": "string",
|
|
387
|
+
"minLength": 1
|
|
388
|
+
},
|
|
389
|
+
"url": {
|
|
390
|
+
"description": "URL of the wallet provider trust list.",
|
|
391
|
+
"type": "string",
|
|
392
|
+
"format": "uri"
|
|
393
|
+
},
|
|
394
|
+
"verifierKey": {
|
|
395
|
+
"description": "Optional verifier key material used for trust list verification.",
|
|
396
|
+
"type": "object",
|
|
397
|
+
"propertyNames": {
|
|
398
|
+
"type": "string"
|
|
399
|
+
},
|
|
400
|
+
"additionalProperties": {}
|
|
401
|
+
},
|
|
402
|
+
"verifierX509Der": {
|
|
403
|
+
"description": "Optional verifier certificate in DER/base64 form.",
|
|
404
|
+
"type": "string"
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
"additionalProperties": false
|
|
408
|
+
}
|
|
409
|
+
},
|
|
410
|
+
"label": {
|
|
411
|
+
"description": "Optional display label for UI selection.",
|
|
412
|
+
"type": "string"
|
|
413
|
+
},
|
|
414
|
+
"enabled": {
|
|
415
|
+
"description": "Whether this authorization server entry is enabled.",
|
|
416
|
+
"type": "boolean"
|
|
417
|
+
}
|
|
418
|
+
},
|
|
419
|
+
"required": [
|
|
420
|
+
"type",
|
|
421
|
+
"id",
|
|
422
|
+
"upstream"
|
|
423
|
+
],
|
|
424
|
+
"additionalProperties": false
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
"type": "object",
|
|
428
|
+
"properties": {
|
|
429
|
+
"type": {
|
|
430
|
+
"type": "string",
|
|
431
|
+
"const": "built-in",
|
|
432
|
+
"description": "Use EUDIPLO built-in authorization server."
|
|
433
|
+
},
|
|
434
|
+
"id": {
|
|
435
|
+
"type": "string",
|
|
436
|
+
"minLength": 1,
|
|
437
|
+
"description": "Authorization server identifier."
|
|
438
|
+
},
|
|
439
|
+
"token": {
|
|
440
|
+
"description": "Optional token issuance settings.",
|
|
441
|
+
"type": "object",
|
|
442
|
+
"properties": {
|
|
443
|
+
"lifetimeSeconds": {
|
|
444
|
+
"description": "Access token lifetime in seconds.",
|
|
445
|
+
"type": "number",
|
|
446
|
+
"minimum": 60
|
|
447
|
+
},
|
|
448
|
+
"signingKeyId": {
|
|
449
|
+
"description": "Optional key chain id used to sign issued tokens.",
|
|
450
|
+
"type": "string",
|
|
451
|
+
"minLength": 1
|
|
452
|
+
},
|
|
453
|
+
"refreshTokenEnabled": {
|
|
454
|
+
"description": "Enable issuing refresh tokens.",
|
|
455
|
+
"type": "boolean"
|
|
456
|
+
},
|
|
457
|
+
"refreshTokenExpiresInSeconds": {
|
|
458
|
+
"description": "Refresh token lifetime in seconds.",
|
|
459
|
+
"type": "number",
|
|
460
|
+
"minimum": 60
|
|
461
|
+
}
|
|
462
|
+
},
|
|
463
|
+
"additionalProperties": false
|
|
464
|
+
},
|
|
465
|
+
"requireDPoP": {
|
|
466
|
+
"description": "Require DPoP proofs for token/credential requests.",
|
|
467
|
+
"type": "boolean"
|
|
468
|
+
},
|
|
469
|
+
"walletAttestationRequired": {
|
|
470
|
+
"description": "Require wallet attestation for this authorization server.",
|
|
471
|
+
"type": "boolean"
|
|
472
|
+
},
|
|
473
|
+
"walletProviderTrustLists": {
|
|
474
|
+
"description": "Optional wallet provider trust list references for this authorization server.",
|
|
475
|
+
"type": "array",
|
|
476
|
+
"items": {
|
|
477
|
+
"type": "object",
|
|
478
|
+
"properties": {
|
|
479
|
+
"trustListId": {
|
|
480
|
+
"type": "string",
|
|
481
|
+
"minLength": 1
|
|
482
|
+
},
|
|
483
|
+
"url": {
|
|
484
|
+
"description": "URL of the wallet provider trust list.",
|
|
485
|
+
"type": "string",
|
|
486
|
+
"format": "uri"
|
|
487
|
+
},
|
|
488
|
+
"verifierKey": {
|
|
489
|
+
"description": "Optional verifier key material used for trust list verification.",
|
|
490
|
+
"type": "object",
|
|
491
|
+
"propertyNames": {
|
|
492
|
+
"type": "string"
|
|
493
|
+
},
|
|
494
|
+
"additionalProperties": {}
|
|
495
|
+
},
|
|
496
|
+
"verifierX509Der": {
|
|
497
|
+
"description": "Optional verifier certificate in DER/base64 form.",
|
|
498
|
+
"type": "string"
|
|
499
|
+
}
|
|
500
|
+
},
|
|
501
|
+
"additionalProperties": false
|
|
502
|
+
}
|
|
503
|
+
},
|
|
504
|
+
"label": {
|
|
505
|
+
"description": "Optional display label for UI selection.",
|
|
506
|
+
"type": "string"
|
|
507
|
+
},
|
|
508
|
+
"enabled": {
|
|
509
|
+
"description": "Whether this authorization server entry is enabled.",
|
|
510
|
+
"type": "boolean"
|
|
511
|
+
}
|
|
512
|
+
},
|
|
513
|
+
"required": [
|
|
514
|
+
"type",
|
|
515
|
+
"id"
|
|
516
|
+
],
|
|
517
|
+
"additionalProperties": false
|
|
518
|
+
}
|
|
519
|
+
],
|
|
520
|
+
"description": "Supported authorization server configurations."
|
|
521
|
+
},
|
|
522
|
+
"description": "Configured authorization server entries."
|
|
523
|
+
},
|
|
524
|
+
"federation": {
|
|
525
|
+
"description": "Optional OpenID Federation settings.",
|
|
526
|
+
"anyOf": [
|
|
527
|
+
{
|
|
528
|
+
"type": "object",
|
|
529
|
+
"properties": {
|
|
530
|
+
"role": {
|
|
531
|
+
"description": "Federation role for this issuer.",
|
|
532
|
+
"type": "string",
|
|
533
|
+
"enum": [
|
|
534
|
+
"trust_anchor",
|
|
535
|
+
"intermediate",
|
|
536
|
+
"leaf"
|
|
537
|
+
]
|
|
538
|
+
},
|
|
539
|
+
"mode": {
|
|
540
|
+
"description": "Federation operation mode.",
|
|
541
|
+
"type": "string",
|
|
542
|
+
"enum": [
|
|
543
|
+
"federation-only",
|
|
544
|
+
"hybrid"
|
|
545
|
+
]
|
|
546
|
+
},
|
|
547
|
+
"entityId": {
|
|
548
|
+
"description": "Optional local federation entity id.",
|
|
549
|
+
"type": "string"
|
|
550
|
+
},
|
|
551
|
+
"enforceSigningPolicy": {
|
|
552
|
+
"description": "Enforce strict signing policy checks.",
|
|
553
|
+
"type": "boolean"
|
|
554
|
+
},
|
|
555
|
+
"cacheTtlSeconds": {
|
|
556
|
+
"description": "Cache time-to-live for federation metadata in seconds.",
|
|
557
|
+
"type": "integer",
|
|
558
|
+
"minimum": 1,
|
|
559
|
+
"maximum": 9007199254740991
|
|
560
|
+
},
|
|
561
|
+
"trustAnchors": {
|
|
562
|
+
"type": "array",
|
|
563
|
+
"items": {
|
|
564
|
+
"type": "object",
|
|
565
|
+
"properties": {
|
|
566
|
+
"entityId": {
|
|
567
|
+
"type": "string",
|
|
568
|
+
"minLength": 1,
|
|
569
|
+
"description": "Federation trust anchor entity id."
|
|
570
|
+
},
|
|
571
|
+
"entityConfigurationUri": {
|
|
572
|
+
"type": "string",
|
|
573
|
+
"format": "uri",
|
|
574
|
+
"description": "Entity configuration URI for the trust anchor."
|
|
575
|
+
}
|
|
576
|
+
},
|
|
577
|
+
"required": [
|
|
578
|
+
"entityId",
|
|
579
|
+
"entityConfigurationUri"
|
|
580
|
+
],
|
|
581
|
+
"additionalProperties": false
|
|
582
|
+
},
|
|
583
|
+
"description": "Federation trust anchors."
|
|
584
|
+
}
|
|
585
|
+
},
|
|
586
|
+
"required": [
|
|
587
|
+
"trustAnchors"
|
|
588
|
+
],
|
|
589
|
+
"additionalProperties": false
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
"type": "null"
|
|
593
|
+
}
|
|
594
|
+
]
|
|
595
|
+
},
|
|
596
|
+
"registrationCertificate": {
|
|
597
|
+
"description": "Optional registration certificate settings.",
|
|
598
|
+
"anyOf": [
|
|
599
|
+
{
|
|
600
|
+
"type": "object",
|
|
601
|
+
"properties": {
|
|
602
|
+
"enabled": {
|
|
603
|
+
"description": "Enable issuer registration certificate support.",
|
|
604
|
+
"type": "boolean"
|
|
605
|
+
},
|
|
606
|
+
"mode": {
|
|
607
|
+
"description": "How registration certificate data is provided.",
|
|
608
|
+
"type": "string",
|
|
609
|
+
"enum": [
|
|
610
|
+
"import",
|
|
611
|
+
"generate"
|
|
612
|
+
]
|
|
613
|
+
},
|
|
614
|
+
"jwt": {
|
|
615
|
+
"description": "Optional registration certificate JWT when using import mode.",
|
|
616
|
+
"type": "string"
|
|
617
|
+
},
|
|
618
|
+
"privacyPolicy": {
|
|
619
|
+
"description": "Optional privacy policy URI.",
|
|
620
|
+
"type": "string"
|
|
621
|
+
},
|
|
622
|
+
"supportUri": {
|
|
623
|
+
"description": "Optional support URI.",
|
|
624
|
+
"type": "string"
|
|
625
|
+
}
|
|
626
|
+
},
|
|
627
|
+
"additionalProperties": false
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"type": "null"
|
|
631
|
+
}
|
|
632
|
+
]
|
|
633
|
+
},
|
|
634
|
+
"display": {
|
|
635
|
+
"description": "Localized issuer metadata shown to wallets.",
|
|
636
|
+
"type": "array",
|
|
637
|
+
"items": {
|
|
638
|
+
"type": "object",
|
|
639
|
+
"properties": {
|
|
640
|
+
"name": {
|
|
641
|
+
"description": "Issuer display name.",
|
|
642
|
+
"type": "string"
|
|
643
|
+
},
|
|
644
|
+
"locale": {
|
|
645
|
+
"description": "Locale tag for this display entry.",
|
|
646
|
+
"type": "string"
|
|
647
|
+
},
|
|
648
|
+
"logo": {
|
|
649
|
+
"description": "Optional issuer logo metadata.",
|
|
650
|
+
"type": "object",
|
|
651
|
+
"properties": {
|
|
652
|
+
"uri": {
|
|
653
|
+
"type": "string",
|
|
654
|
+
"minLength": 1,
|
|
655
|
+
"description": "Logo URI."
|
|
656
|
+
},
|
|
657
|
+
"alt_text": {
|
|
658
|
+
"description": "Optional localized alternative text.",
|
|
659
|
+
"type": "string"
|
|
660
|
+
}
|
|
661
|
+
},
|
|
662
|
+
"required": [
|
|
663
|
+
"uri"
|
|
664
|
+
],
|
|
665
|
+
"additionalProperties": {}
|
|
666
|
+
}
|
|
667
|
+
},
|
|
668
|
+
"additionalProperties": {}
|
|
669
|
+
}
|
|
670
|
+
},
|
|
671
|
+
"notificationEndpointEnabled": {
|
|
672
|
+
"description": "Whether the OID4VCI notification endpoint is exposed for this issuance configuration.",
|
|
673
|
+
"type": "boolean"
|
|
674
|
+
},
|
|
675
|
+
"credentialResponseEncryption": {
|
|
676
|
+
"description": "Enable encrypted credential responses.",
|
|
677
|
+
"type": "boolean"
|
|
678
|
+
},
|
|
679
|
+
"credentialRequestEncryption": {
|
|
680
|
+
"description": "Require encrypted credential requests.",
|
|
681
|
+
"type": "boolean"
|
|
682
|
+
},
|
|
683
|
+
"txCodeMaxAttempts": {
|
|
684
|
+
"description": "Maximum verification attempts for transaction codes. Null resets to defaults.",
|
|
685
|
+
"anyOf": [
|
|
686
|
+
{
|
|
687
|
+
"type": "integer",
|
|
688
|
+
"minimum": 1,
|
|
689
|
+
"maximum": 9007199254740991
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
"type": "null"
|
|
693
|
+
}
|
|
694
|
+
]
|
|
695
|
+
}
|
|
696
|
+
},
|
|
697
|
+
"required": [
|
|
698
|
+
"authorizationServers"
|
|
699
|
+
],
|
|
700
|
+
"additionalProperties": false,
|
|
701
|
+
"title": "IssuanceConfig"
|
|
702
|
+
}
|
|
703
|
+
}
|
|
42
704
|
}
|
|
43
705
|
]
|
|
44
706
|
}
|