@eudiplo/cli 7.2.0 → 7.3.0-main.b8ff00a
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 +88 -24
- package/dist/commands/commands/index.d.ts +4 -0
- package/dist/commands/commands/index.d.ts.map +1 -0
- package/dist/commands/commands/index.js +13 -0
- package/dist/commands/commands/index.js.map +1 -0
- package/dist/commands/commands/render.d.ts +4 -0
- package/dist/commands/commands/render.d.ts.map +1 -0
- package/dist/commands/commands/render.js +52 -0
- package/dist/commands/commands/render.js.map +1 -0
- package/dist/commands/completion/action.d.ts +6 -0
- package/dist/commands/completion/action.d.ts.map +1 -0
- package/dist/commands/completion/action.js +133 -0
- package/dist/commands/completion/action.js.map +1 -0
- package/dist/commands/completion/index.d.ts +6 -0
- package/dist/commands/completion/index.d.ts.map +1 -0
- package/dist/commands/completion/index.js +23 -0
- package/dist/commands/completion/index.js.map +1 -0
- package/dist/commands/config/action.d.ts +4 -0
- package/dist/commands/config/action.d.ts.map +1 -0
- package/dist/commands/config/action.js +33 -0
- package/dist/commands/config/action.js.map +1 -0
- package/dist/commands/config/editor/action.d.ts +3 -0
- package/dist/commands/config/editor/action.d.ts.map +1 -0
- package/dist/commands/config/editor/action.js +112 -0
- package/dist/commands/config/editor/action.js.map +1 -0
- package/dist/commands/config/editor/index.d.ts +5 -0
- package/dist/commands/config/editor/index.d.ts.map +1 -0
- package/dist/commands/config/editor/index.js +20 -0
- package/dist/commands/config/editor/index.js.map +1 -0
- package/dist/commands/config/index.d.ts +1 -1
- package/dist/commands/config/index.d.ts.map +1 -1
- package/dist/commands/config/index.js +22 -0
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/config/portability/action.d.ts +5 -0
- package/dist/commands/config/portability/action.d.ts.map +1 -0
- package/dist/commands/config/portability/action.js +164 -0
- package/dist/commands/config/portability/action.js.map +1 -0
- package/dist/commands/config/portability/index.d.ts +5 -0
- package/dist/commands/config/portability/index.d.ts.map +1 -0
- package/dist/commands/config/portability/index.js +44 -0
- package/dist/commands/config/portability/index.js.map +1 -0
- package/dist/commands/config/portability/migrations.d.ts +24 -0
- package/dist/commands/config/portability/migrations.d.ts.map +1 -0
- package/dist/commands/config/portability/migrations.js +95 -0
- package/dist/commands/config/portability/migrations.js.map +1 -0
- package/dist/commands/config/portability/migrations.spec.d.ts +2 -0
- package/dist/commands/config/portability/migrations.spec.d.ts.map +1 -0
- package/dist/commands/config/portability/migrations.spec.js +32 -0
- package/dist/commands/config/portability/migrations.spec.js.map +1 -0
- package/dist/commands/config/tenant/action.d.ts.map +1 -1
- package/dist/commands/config/tenant/action.js +16 -6
- package/dist/commands/config/tenant/action.js.map +1 -1
- package/dist/commands/config/tenant/index.d.ts.map +1 -1
- package/dist/commands/config/tenant/index.js.map +1 -1
- package/dist/commands/config/validate/action.d.ts.map +1 -1
- package/dist/commands/config/validate/action.js +3 -1
- package/dist/commands/config/validate/action.js.map +1 -1
- package/dist/commands/config/validate/registry.d.ts +1 -0
- package/dist/commands/config/validate/registry.d.ts.map +1 -1
- package/dist/commands/config/validate/registry.js +1 -1
- package/dist/commands/config/validate/registry.js.map +1 -1
- package/dist/commands/config/validate/registry.json +12 -23
- package/dist/commands/config/validate/report.d.ts.map +1 -1
- package/dist/commands/config/validate/report.js +6 -1
- package/dist/commands/config/validate/report.js.map +1 -1
- package/dist/commands/config/validate/schemas.d.ts +1 -0
- package/dist/commands/config/validate/schemas.d.ts.map +1 -1
- package/dist/commands/config/validate/schemas.js +16 -5
- package/dist/commands/config/validate/schemas.js.map +1 -1
- package/dist/commands/config/validate/types.d.ts.map +1 -1
- package/dist/commands/config/validate/validator.d.ts.map +1 -1
- package/dist/commands/config/validate/validator.js +13 -5
- package/dist/commands/config/validate/validator.js.map +1 -1
- package/dist/commands/demo/action.d.ts.map +1 -1
- package/dist/commands/demo/action.js +3 -2
- package/dist/commands/demo/action.js.map +1 -1
- package/dist/commands/demo/index.d.ts.map +1 -1
- package/dist/commands/demo/index.js.map +1 -1
- package/dist/commands/deployment/action.d.ts.map +1 -1
- package/dist/commands/deployment/action.js +10 -3
- package/dist/commands/deployment/action.js.map +1 -1
- package/dist/commands/deployment/index.d.ts.map +1 -1
- package/dist/commands/deployment/index.js +1 -1
- package/dist/commands/deployment/index.js.map +1 -1
- package/dist/commands/doctor/action.d.ts.map +1 -1
- package/dist/commands/doctor/action.js +1 -1
- package/dist/commands/doctor/action.js.map +1 -1
- package/dist/commands/init/action.d.ts.map +1 -1
- package/dist/commands/init/action.js +20 -7
- package/dist/commands/init/action.js.map +1 -1
- package/dist/commands/init/index.d.ts.map +1 -1
- package/dist/commands/init/index.js.map +1 -1
- package/dist/commands/instance/action.d.ts +4 -0
- package/dist/commands/instance/action.d.ts.map +1 -1
- package/dist/commands/instance/action.js +66 -1
- package/dist/commands/instance/action.js.map +1 -1
- package/dist/commands/instance/index.d.ts.map +1 -1
- package/dist/commands/instance/index.js +31 -1
- package/dist/commands/instance/index.js.map +1 -1
- package/dist/commands/shared.d.ts.map +1 -1
- package/dist/commands/shared.js +4 -1
- package/dist/commands/shared.js.map +1 -1
- package/dist/commands/status/action.d.ts.map +1 -1
- package/dist/commands/status/action.js.map +1 -1
- package/dist/commands/version/action.d.ts.map +1 -1
- package/dist/commands/version/action.js +3 -1
- package/dist/commands/version/action.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/runtime.d.ts +2 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +8 -1
- package/dist/runtime.js.map +1 -1
- package/dist/sea-assets.d.ts +4 -2
- package/dist/sea-assets.d.ts.map +1 -1
- package/dist/sea-assets.js +6 -3
- package/dist/sea-assets.js.map +1 -1
- package/dist/services/cli-config.d.ts +2 -0
- package/dist/services/cli-config.d.ts.map +1 -1
- package/dist/services/cli-config.js +22 -1
- 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 +14 -6
- package/dist/services/compose-project.js.map +1 -1
- package/dist/services/deployment-drivers.d.ts +7 -0
- package/dist/services/deployment-drivers.d.ts.map +1 -1
- package/dist/services/deployment-drivers.js +79 -16
- package/dist/services/deployment-drivers.js.map +1 -1
- package/dist/services/diagnostics.d.ts.map +1 -1
- package/dist/services/diagnostics.js +3 -1
- package/dist/services/diagnostics.js.map +1 -1
- package/dist/services/instance-selection.d.ts.map +1 -1
- package/dist/services/instance-selection.js.map +1 -1
- package/dist/services/project-directory.d.ts.map +1 -1
- package/dist/services/project-directory.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +10 -8
- package/templates/demo-config/issuance/issuance.json +20 -12
- package/templates/demo-config/key-chains/access.json +13 -2
- package/templates/demo-config/key-chains/attestation.json +14 -3
- package/templates/demo-config/key-chains/status-list.json +15 -4
- package/templates/demo-config/key-chains/trust-list.json +13 -2
- package/templates/demo-config/presentation/age-over-18.json +46 -53
- package/templates/demo-config/presentation/pid.json +44 -0
- package/templates/demo-config.manifest.json +1 -0
- package/templates/schemas/AttributeProviderAuth.schema.json +60 -0
- package/templates/schemas/AttributeProviderConfigFile.schema.json +37 -0
- package/templates/schemas/CertImportDto.schema.json +35 -0
- package/templates/schemas/ClientConfigFile.schema.json +37 -0
- package/templates/schemas/ConfigDocumentMetadata.schema.json +25 -0
- package/templates/schemas/CreateClientDto.schema.json +1 -0
- package/templates/schemas/CreateStatusListDto.schema.json +46 -0
- package/templates/schemas/CreateTenantDto.schema.json +117 -0
- package/templates/schemas/CredentialConfigFile.schema.json +37 -0
- package/templates/schemas/DCQL.schema.json +401 -0
- package/templates/schemas/EmbeddedDisclosurePolicy.schema.json +106 -0
- package/templates/schemas/ImportTenantDto.schema.json +69 -0
- package/templates/schemas/IssuanceConfigFile.schema.json +32 -0
- package/templates/schemas/KeyChainConfigFile.schema.json +476 -0
- package/templates/schemas/KeyChainCreateDto.schema.json +66 -0
- package/templates/schemas/KeyChainUpdateDto.schema.json +40 -0
- package/templates/schemas/KmsConfigFile.schema.json +37 -0
- package/templates/schemas/PresentationConfigFile.schema.json +32 -0
- package/templates/schemas/RegistrarConfigFile.schema.json +37 -0
- package/templates/schemas/RotationPolicyCreateDto.schema.json +28 -0
- package/templates/schemas/RotationPolicyUpdateDto.schema.json +25 -0
- package/templates/schemas/SessionStorageConfig.schema.json +24 -0
- package/templates/schemas/StatusListConfig.schema.json +51 -0
- package/templates/schemas/StatusListConfigFile.schema.json +37 -0
- package/templates/schemas/TenantConfigFile.schema.json +230 -0
- package/templates/schemas/TransactionData.schema.json +24 -0
- package/templates/schemas/TrustListConfigFile.schema.json +37 -0
- package/templates/schemas/UpdateAttributeProviderDto.schema.json +93 -0
- package/templates/schemas/UpdateClientDto.schema.json +63 -0
- package/templates/schemas/UpdateStatusListConfigDto.schema.json +85 -0
- package/templates/schemas/UpdateStatusListDto.schema.json +33 -0
- package/templates/schemas/UpdateTenantDto.schema.json +96 -0
- package/templates/schemas/UpdateWebhookEndpointDto.schema.json +93 -0
- package/templates/schemas/VCT.schema.json +37 -0
- package/templates/schemas/WebhookConfig.schema.json +80 -0
- package/templates/schemas/WebhookEndpointConfigFile.schema.json +37 -0
- package/templates/schemas.manifest.json +35 -1
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
{
|
|
2
|
+
"apiVersion": "eudiplo.io/key-chain/v2",
|
|
3
|
+
"kind": "KeyChain",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "2f71c235-87e2-43c9-b572-739a3164ce95",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
2
9
|
"id": "2f71c235-87e2-43c9-b572-739a3164ce95",
|
|
3
10
|
"description": "Access Certificate",
|
|
4
11
|
"usageType": "access",
|
|
5
|
-
"
|
|
12
|
+
"keySource": {
|
|
13
|
+
"type": "private-jwk",
|
|
14
|
+
"jwk": {
|
|
6
15
|
"kty": "EC",
|
|
7
16
|
"x": "XhUejp-xQ_Dk0dRpg8PBFr0viFpdI_nmErMWjzOnOEg",
|
|
8
17
|
"y": "TfvSjR63Ohj8HpiBkVm0FaieKmahFNJC4IfXZtL14PQ",
|
|
9
18
|
"crv": "P-256",
|
|
10
19
|
"d": "878XDi2iZi860bluRn4j1Ib3zlzYIaUN2q1qklhmA90",
|
|
11
20
|
"kid": "2f71c235-87e2-43c9-b572-739a3164ce95-active"
|
|
21
|
+
}
|
|
12
22
|
},
|
|
13
23
|
"kmsProvider": "db",
|
|
14
24
|
"crt": [
|
|
15
|
-
|
|
25
|
+
"-----BEGIN CERTIFICATE-----\nMIIBqDCCAU6gAwIBAgIRAKvmiMRB5R7lA5jLGSWb+t0wCgYIKoZIzj0EAwIwIzEL\nMAkGA1UEBhMCREUxFDASBgNVBAMTC0RlbW8gVGVuYW50MB4XDTI2MDMwOTExMDM1\nN1oXDTI3MDMwOTExMDM1N1owIzELMAkGA1UEBhMCREUxFDASBgNVBAMTC0RlbW8g\nVGVuYW50MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXhUejp+xQ/Dk0dRpg8PB\nFr0viFpdI/nmErMWjzOnOEhN+9KNHrc6GPwemIGRWbQVqJ4qZqEU0kLgh9dm0vXg\n9KNjMGEwIgYDVR0RBBswGYIXc2VydmljZS5ldWRpLXdhbGxldC5kZXYwDAYDVR0T\nAQH/BAIwADAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0OBBYEFJ/qrJtPiM+jlZzxig8f\nVugUZLHYMAoGCCqGSM49BAMCA0gAMEUCIQDxZTfmEZ6XXETPk5iQHRqpPmhJYMpB\n3KZ/XzNBTbC8OAIgZwa4rpELbnfCweRNhC0JjZ/sVZl1TPgBd11N56l7r34=\n-----END CERTIFICATE-----"
|
|
16
26
|
]
|
|
27
|
+
}
|
|
17
28
|
}
|
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
{
|
|
2
|
+
"apiVersion": "eudiplo.io/key-chain/v2",
|
|
3
|
+
"kind": "KeyChain",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "dbb65456-c358-46c1-bb5b-c777ef72c1d3",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
2
9
|
"id": "dbb65456-c358-46c1-bb5b-c777ef72c1d3",
|
|
3
10
|
"description": "key for signing",
|
|
4
11
|
"usageType": "attestation",
|
|
5
|
-
"
|
|
12
|
+
"keySource": {
|
|
13
|
+
"type": "private-jwk",
|
|
14
|
+
"jwk": {
|
|
6
15
|
"crv": "P-256",
|
|
7
16
|
"d": "oXPLTk02Mq9n8GfOTQ8hdoe3ENkNoN_Y2ymLnUmnbV0",
|
|
8
17
|
"kty": "EC",
|
|
9
18
|
"x": "HHkkbUgKSkkqXmL8utl-TLWIg8CYQS4WPJ8j_nO44Yw",
|
|
10
19
|
"y": "1NJY0LT3mEuucLQCZJWNrA7fVW8ypR4Zf5cuu85NjSw",
|
|
11
20
|
"alg": "ES256"
|
|
21
|
+
}
|
|
12
22
|
},
|
|
13
23
|
"kmsProvider": "db",
|
|
14
24
|
"rotationPolicy": {
|
|
15
|
-
|
|
16
|
-
|
|
25
|
+
"certValidityDays": 30,
|
|
26
|
+
"enabled": true
|
|
17
27
|
}
|
|
28
|
+
}
|
|
18
29
|
}
|
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
{
|
|
2
|
+
"apiVersion": "eudiplo.io/key-chain/v2",
|
|
3
|
+
"kind": "KeyChain",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "dbb65456-c358-46c1-bb5b-c777ef72c1d4",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
2
9
|
"id": "dbb65456-c358-46c1-bb5b-c777ef72c1d4",
|
|
3
10
|
"description": "key for status list signing",
|
|
4
11
|
"usageType": "statusList",
|
|
5
|
-
"
|
|
12
|
+
"keySource": {
|
|
13
|
+
"type": "private-jwk",
|
|
14
|
+
"jwk": {
|
|
6
15
|
"crv": "P-256",
|
|
7
16
|
"d": "oXPLTk02Mq9n8GfOTQ8hdoe3ENkNoN_Y2ymLnUmnbV0",
|
|
8
17
|
"kty": "EC",
|
|
9
18
|
"x": "HHkkbUgKSkkqXmL8utl-TLWIg8CYQS4WPJ8j_nO44Yw",
|
|
10
19
|
"y": "1NJY0LT3mEuucLQCZJWNrA7fVW8ypR4Zf5cuu85NjSw",
|
|
11
20
|
"alg": "ES256"
|
|
21
|
+
}
|
|
12
22
|
},
|
|
13
23
|
"kmsProvider": "db",
|
|
14
24
|
"rotationPolicy": {
|
|
15
|
-
|
|
16
|
-
|
|
25
|
+
"certValidityDays": 30,
|
|
26
|
+
"enabled": true
|
|
17
27
|
}
|
|
18
|
-
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
{
|
|
2
|
+
"apiVersion": "eudiplo.io/key-chain/v2",
|
|
3
|
+
"kind": "KeyChain",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "570852d7-7e7f-40af-a0e3-a6ebffd75ed0",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
2
9
|
"id": "570852d7-7e7f-40af-a0e3-a6ebffd75ed0",
|
|
3
10
|
"description": "used to sign trust lists",
|
|
4
11
|
"usageType": "trustList",
|
|
5
|
-
"
|
|
12
|
+
"keySource": {
|
|
13
|
+
"type": "private-jwk",
|
|
14
|
+
"jwk": {
|
|
6
15
|
"crv": "P-256",
|
|
7
16
|
"d": "_iZzAnnFH_HsBzDG_hk8qpTQmh_sCwhPpvebVNjhe2A",
|
|
8
17
|
"kty": "EC",
|
|
9
18
|
"x": "MhpvX9dEM8NsXM-c6474d2uHrPRWrVD4WZGtVvxfQhk",
|
|
10
19
|
"y": "q_uS4tQZSKu22_YgTlEFjuNdz-e-uNHzW1-x_VLicco",
|
|
11
20
|
"alg": "ES256"
|
|
21
|
+
}
|
|
12
22
|
},
|
|
13
23
|
"kmsProvider": "db"
|
|
14
|
-
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -1,64 +1,57 @@
|
|
|
1
1
|
{
|
|
2
|
+
"apiVersion": "eudiplo.io/presentation-config/v2",
|
|
3
|
+
"kind": "PresentationConfig",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "age-over-18",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
2
9
|
"id": "age-over-18",
|
|
3
10
|
"description": "Age Over 18 Verification - Proves user is 18+ without revealing exact birthdate",
|
|
4
11
|
"dcql_query": {
|
|
5
|
-
|
|
12
|
+
"credentials": [
|
|
13
|
+
{
|
|
14
|
+
"id": "pid-sd-jwt",
|
|
15
|
+
"format": "dc+sd-jwt",
|
|
16
|
+
"meta": {
|
|
17
|
+
"vct_values": ["urn:eudi:pid:de:1"]
|
|
18
|
+
},
|
|
19
|
+
"claims": [
|
|
6
20
|
{
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"18"
|
|
19
|
-
]
|
|
20
|
-
}
|
|
21
|
-
]
|
|
22
|
-
},
|
|
21
|
+
"path": ["age_equal_or_over", "18"]
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": "pid-mso-mdoc",
|
|
27
|
+
"format": "mso_mdoc",
|
|
28
|
+
"meta": {
|
|
29
|
+
"doctype_value": "eu.europa.ec.eudi.pid.1"
|
|
30
|
+
},
|
|
31
|
+
"claims": [
|
|
23
32
|
{
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
"meta": {
|
|
27
|
-
"doctype_value": "eu.europa.ec.eudi.pid.1"
|
|
28
|
-
},
|
|
29
|
-
"claims": [
|
|
30
|
-
{
|
|
31
|
-
"path": [
|
|
32
|
-
"eu.europa.ec.eudi.pid.1",
|
|
33
|
-
"age_over_18"
|
|
34
|
-
],
|
|
35
|
-
"intent_to_retain": false
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
"trusted_authorities": [
|
|
39
|
-
{
|
|
40
|
-
"type": "etsi_tl",
|
|
41
|
-
"values": [
|
|
42
|
-
{
|
|
43
|
-
"trustListId": "580831bc-ef11-43f4-a3be-a2b6bf1b29a3"
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
}
|
|
47
|
-
]
|
|
33
|
+
"path": ["eu.europa.ec.eudi.pid.1", "age_over_18"],
|
|
34
|
+
"intent_to_retain": false
|
|
48
35
|
}
|
|
49
|
-
|
|
50
|
-
|
|
36
|
+
],
|
|
37
|
+
"trusted_authorities": [
|
|
51
38
|
{
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
]
|
|
59
|
-
]
|
|
39
|
+
"type": "etsi_tl",
|
|
40
|
+
"values": [
|
|
41
|
+
{
|
|
42
|
+
"trustListId": "580831bc-ef11-43f4-a3be-a2b6bf1b29a3"
|
|
43
|
+
}
|
|
44
|
+
]
|
|
60
45
|
}
|
|
61
|
-
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"credential_sets": [
|
|
50
|
+
{
|
|
51
|
+
"options": [["pid-sd-jwt"], ["pid-mso-mdoc"]]
|
|
52
|
+
}
|
|
53
|
+
]
|
|
62
54
|
},
|
|
63
55
|
"lifeTime": 300
|
|
64
|
-
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"apiVersion": "eudiplo.io/presentation-config/v2",
|
|
3
|
+
"kind": "PresentationConfig",
|
|
4
|
+
"metadata": {
|
|
5
|
+
"id": "pid",
|
|
6
|
+
"generation": 1
|
|
7
|
+
},
|
|
8
|
+
"spec": {
|
|
9
|
+
"id": "pid",
|
|
10
|
+
"description": "Presentation ID",
|
|
11
|
+
"dcql_query": {
|
|
12
|
+
"credentials": [
|
|
13
|
+
{
|
|
14
|
+
"id": "pid",
|
|
15
|
+
"format": "dc+sd-jwt",
|
|
16
|
+
"meta": {
|
|
17
|
+
"vct_values": [
|
|
18
|
+
"<TENANT_URL>/credentials-metadata/vct/pid"
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
"claims": [
|
|
22
|
+
{
|
|
23
|
+
"path": [
|
|
24
|
+
"address",
|
|
25
|
+
"locality"
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"trusted_authorities": [
|
|
30
|
+
{
|
|
31
|
+
"type": "etsi_tl",
|
|
32
|
+
"values": [
|
|
33
|
+
{
|
|
34
|
+
"trustListId": "580831bc-ef11-43f4-a3be-a2b6bf1b29a3"
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
"webhookEndpointId": "notification"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"oneOf": [
|
|
4
|
+
{
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"type": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"const": "none",
|
|
10
|
+
"description": "Disable authentication for attribute provider calls."
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"required": [
|
|
14
|
+
"type"
|
|
15
|
+
],
|
|
16
|
+
"additionalProperties": false,
|
|
17
|
+
"description": "No authentication variant."
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"type": "object",
|
|
21
|
+
"properties": {
|
|
22
|
+
"type": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"const": "apiKey",
|
|
25
|
+
"description": "Use API key authentication."
|
|
26
|
+
},
|
|
27
|
+
"config": {
|
|
28
|
+
"type": "object",
|
|
29
|
+
"properties": {
|
|
30
|
+
"headerName": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"minLength": 1,
|
|
33
|
+
"description": "HTTP header name carrying the API key."
|
|
34
|
+
},
|
|
35
|
+
"value": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"minLength": 1,
|
|
38
|
+
"description": "API key value."
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"required": [
|
|
42
|
+
"headerName",
|
|
43
|
+
"value"
|
|
44
|
+
],
|
|
45
|
+
"additionalProperties": false,
|
|
46
|
+
"description": "API key authentication settings."
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"required": [
|
|
50
|
+
"type",
|
|
51
|
+
"config"
|
|
52
|
+
],
|
|
53
|
+
"additionalProperties": false,
|
|
54
|
+
"description": "API key authentication variant."
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
"description": "Authentication method used to call the attribute provider.",
|
|
58
|
+
"$id": "./AttributeProviderAuth.schema.json",
|
|
59
|
+
"title": "AttributeProviderAuth"
|
|
60
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "./AttributeProviderConfigFile.schema.json",
|
|
4
|
+
"title": "AttributeProviderConfigFile",
|
|
5
|
+
"description": "An attribute-provider configuration file in legacy payload or versioned-envelope form.",
|
|
6
|
+
"oneOf": [
|
|
7
|
+
{
|
|
8
|
+
"$ref": "./CreateAttributeProviderDto.schema.json"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "object",
|
|
12
|
+
"properties": {
|
|
13
|
+
"apiVersion": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"const": "eudiplo.io/attribute-provider/v1"
|
|
16
|
+
},
|
|
17
|
+
"kind": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"const": "AttributeProvider"
|
|
20
|
+
},
|
|
21
|
+
"metadata": {
|
|
22
|
+
"$ref": "./ConfigDocumentMetadata.schema.json"
|
|
23
|
+
},
|
|
24
|
+
"spec": {
|
|
25
|
+
"$ref": "./CreateAttributeProviderDto.schema.json"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"required": [
|
|
29
|
+
"apiVersion",
|
|
30
|
+
"kind",
|
|
31
|
+
"metadata",
|
|
32
|
+
"spec"
|
|
33
|
+
],
|
|
34
|
+
"additionalProperties": false
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"id": {
|
|
6
|
+
"description": "Optional certificate id. If omitted, one may be generated.",
|
|
7
|
+
"type": "string",
|
|
8
|
+
"minLength": 1
|
|
9
|
+
},
|
|
10
|
+
"keyId": {
|
|
11
|
+
"description": "Optional key chain id associated with this certificate chain.",
|
|
12
|
+
"type": "string",
|
|
13
|
+
"minLength": 1
|
|
14
|
+
},
|
|
15
|
+
"description": {
|
|
16
|
+
"description": "Optional certificate description.",
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"crt": {
|
|
20
|
+
"minItems": 1,
|
|
21
|
+
"type": "array",
|
|
22
|
+
"items": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"minLength": 1
|
|
25
|
+
},
|
|
26
|
+
"description": "Certificate chain entries, typically PEM-encoded certificates."
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"required": [
|
|
30
|
+
"crt"
|
|
31
|
+
],
|
|
32
|
+
"additionalProperties": false,
|
|
33
|
+
"$id": "./CertImportDto.schema.json",
|
|
34
|
+
"title": "CertImportDto"
|
|
35
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "./ClientConfigFile.schema.json",
|
|
4
|
+
"title": "ClientConfigFile",
|
|
5
|
+
"description": "A client configuration file in legacy payload or versioned-envelope form.",
|
|
6
|
+
"oneOf": [
|
|
7
|
+
{
|
|
8
|
+
"$ref": "./CreateClientDto.schema.json"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "object",
|
|
12
|
+
"properties": {
|
|
13
|
+
"apiVersion": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"const": "eudiplo.io/client/v1"
|
|
16
|
+
},
|
|
17
|
+
"kind": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"const": "Client"
|
|
20
|
+
},
|
|
21
|
+
"metadata": {
|
|
22
|
+
"$ref": "./ConfigDocumentMetadata.schema.json"
|
|
23
|
+
},
|
|
24
|
+
"spec": {
|
|
25
|
+
"$ref": "./CreateClientDto.schema.json"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"required": [
|
|
29
|
+
"apiVersion",
|
|
30
|
+
"kind",
|
|
31
|
+
"metadata",
|
|
32
|
+
"spec"
|
|
33
|
+
],
|
|
34
|
+
"additionalProperties": false
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "./ConfigDocumentMetadata.schema.json",
|
|
4
|
+
"title": "ConfigDocumentMetadata",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"minLength": 1,
|
|
10
|
+
"description": "Stable resource identifier."
|
|
11
|
+
},
|
|
12
|
+
"generation": {
|
|
13
|
+
"type": "integer",
|
|
14
|
+
"minimum": 1,
|
|
15
|
+
"description": "Monotonically increasing configuration generation."
|
|
16
|
+
},
|
|
17
|
+
"ownership": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"enum": ["unmanaged", "file-managed"],
|
|
20
|
+
"description": "Requested ownership recorded when the document is applied."
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"required": ["id"],
|
|
24
|
+
"additionalProperties": false
|
|
25
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"credentialConfigurationId": {
|
|
6
|
+
"description": "Optional credential configuration binding.",
|
|
7
|
+
"type": "string",
|
|
8
|
+
"minLength": 1
|
|
9
|
+
},
|
|
10
|
+
"keyChainId": {
|
|
11
|
+
"description": "Optional key chain to sign the list with.",
|
|
12
|
+
"type": "string",
|
|
13
|
+
"minLength": 1
|
|
14
|
+
},
|
|
15
|
+
"bits": {
|
|
16
|
+
"description": "Optional bits-per-status value.",
|
|
17
|
+
"anyOf": [
|
|
18
|
+
{
|
|
19
|
+
"type": "number",
|
|
20
|
+
"const": 1
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "number",
|
|
24
|
+
"const": 2
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"type": "number",
|
|
28
|
+
"const": 4
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"type": "number",
|
|
32
|
+
"const": 8
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"capacity": {
|
|
37
|
+
"description": "Optional status list capacity.",
|
|
38
|
+
"type": "integer",
|
|
39
|
+
"minimum": 1000,
|
|
40
|
+
"maximum": 9007199254740991
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"additionalProperties": false,
|
|
44
|
+
"$id": "./CreateStatusListDto.schema.json",
|
|
45
|
+
"title": "CreateStatusListDto"
|
|
46
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"id": {
|
|
6
|
+
"type": "string",
|
|
7
|
+
"minLength": 1,
|
|
8
|
+
"description": "Unique tenant identifier."
|
|
9
|
+
},
|
|
10
|
+
"name": {
|
|
11
|
+
"default": "EUDIPLO",
|
|
12
|
+
"description": "Display name of the tenant.",
|
|
13
|
+
"type": "string",
|
|
14
|
+
"minLength": 1
|
|
15
|
+
},
|
|
16
|
+
"description": {
|
|
17
|
+
"description": "Optional tenant description.",
|
|
18
|
+
"type": "string",
|
|
19
|
+
"minLength": 1
|
|
20
|
+
},
|
|
21
|
+
"roles": {
|
|
22
|
+
"description": "Optional default role assignments for the tenant.",
|
|
23
|
+
"type": "array",
|
|
24
|
+
"items": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"enum": [
|
|
27
|
+
"tenants:manage",
|
|
28
|
+
"issuance:offer",
|
|
29
|
+
"issuance:manage",
|
|
30
|
+
"presentation:request",
|
|
31
|
+
"presentation:manage",
|
|
32
|
+
"clients:manage",
|
|
33
|
+
"users:manage",
|
|
34
|
+
"registrar:manage",
|
|
35
|
+
"tenant:admin"
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"sessionConfig": {
|
|
40
|
+
"description": "Optional tenant-specific session storage configuration.",
|
|
41
|
+
"type": "object",
|
|
42
|
+
"properties": {
|
|
43
|
+
"ttlSeconds": {
|
|
44
|
+
"description": "Session time-to-live in seconds.",
|
|
45
|
+
"type": "integer",
|
|
46
|
+
"minimum": 60,
|
|
47
|
+
"maximum": 9007199254740991
|
|
48
|
+
},
|
|
49
|
+
"cleanupMode": {
|
|
50
|
+
"description": "Whether to fully delete or anonymize expired sessions.",
|
|
51
|
+
"type": "string",
|
|
52
|
+
"enum": [
|
|
53
|
+
"full",
|
|
54
|
+
"anonymize"
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"additionalProperties": false
|
|
59
|
+
},
|
|
60
|
+
"statusListConfig": {
|
|
61
|
+
"description": "Optional tenant-specific status list defaults.",
|
|
62
|
+
"type": "object",
|
|
63
|
+
"properties": {
|
|
64
|
+
"capacity": {
|
|
65
|
+
"description": "Default status list capacity.",
|
|
66
|
+
"type": "integer",
|
|
67
|
+
"minimum": 100,
|
|
68
|
+
"maximum": 9007199254740991
|
|
69
|
+
},
|
|
70
|
+
"bits": {
|
|
71
|
+
"description": "Bits-per-status setting (1, 2, 4, or 8).",
|
|
72
|
+
"anyOf": [
|
|
73
|
+
{
|
|
74
|
+
"type": "number",
|
|
75
|
+
"const": 1
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"type": "number",
|
|
79
|
+
"const": 2
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"type": "number",
|
|
83
|
+
"const": 4
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"type": "number",
|
|
87
|
+
"const": 8
|
|
88
|
+
}
|
|
89
|
+
]
|
|
90
|
+
},
|
|
91
|
+
"ttl": {
|
|
92
|
+
"description": "JWT TTL for status list tokens in seconds.",
|
|
93
|
+
"type": "integer",
|
|
94
|
+
"minimum": 60,
|
|
95
|
+
"maximum": 9007199254740991
|
|
96
|
+
},
|
|
97
|
+
"immediateUpdate": {
|
|
98
|
+
"description": "Regenerate status list JWTs immediately after status updates.",
|
|
99
|
+
"type": "boolean"
|
|
100
|
+
},
|
|
101
|
+
"enableAggregation": {
|
|
102
|
+
"description": "Include aggregation_uri in generated status list JWTs.",
|
|
103
|
+
"type": "boolean"
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
"additionalProperties": false
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
"required": [
|
|
110
|
+
"id",
|
|
111
|
+
"name"
|
|
112
|
+
],
|
|
113
|
+
"additionalProperties": false,
|
|
114
|
+
"description": "Payload for creating a tenant.",
|
|
115
|
+
"$id": "./CreateTenantDto.schema.json",
|
|
116
|
+
"title": "CreateTenantDto"
|
|
117
|
+
}
|