@eudiplo/cli 9.1.0-main.892d49e → 9.1.0-main.8be8b4e
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/commands/completion/action.js +3 -1
- package/dist/commands/completion/action.js.map +1 -1
- package/dist/commands/config/portability/migrations.spec.js +5 -2
- package/dist/commands/config/portability/migrations.spec.js.map +1 -1
- package/dist/commands/config/portability/upgrade.d.ts.map +1 -1
- package/dist/commands/config/portability/upgrade.js +7 -8
- package/dist/commands/config/portability/upgrade.js.map +1 -1
- package/dist/commands/config/tenant/action.d.ts.map +1 -1
- package/dist/commands/config/tenant/action.js +3 -2
- package/dist/commands/config/tenant/action.js.map +1 -1
- package/dist/commands/config/validate/action.d.ts.map +1 -1
- package/dist/commands/config/validate/action.js +2 -1
- package/dist/commands/config/validate/action.js.map +1 -1
- package/dist/commands/config/validate/registry.json +21 -0
- package/dist/commands/init/action.d.ts.map +1 -1
- package/dist/commands/init/action.js +1 -11
- package/dist/commands/init/action.js.map +1 -1
- package/dist/commands/instance/action.d.ts +2 -0
- package/dist/commands/instance/action.d.ts.map +1 -1
- package/dist/commands/instance/action.js +68 -12
- 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 +21 -3
- package/dist/commands/instance/index.js.map +1 -1
- package/dist/commands/open/action.d.ts.map +1 -1
- package/dist/commands/open/action.js +13 -2
- package/dist/commands/open/action.js.map +1 -1
- package/dist/commands/status/action.d.ts.map +1 -1
- package/dist/commands/status/action.js +2 -1
- package/dist/commands/status/action.js.map +1 -1
- package/dist/index.js +21395 -5631
- package/dist/services/api-auth.d.ts.map +1 -1
- package/dist/services/api-auth.js +3 -2
- package/dist/services/api-auth.js.map +1 -1
- package/dist/services/browser.d.ts.map +1 -1
- package/dist/services/browser.js +3 -2
- package/dist/services/browser.js.map +1 -1
- package/dist/services/cli-config.d.ts +41 -1
- package/dist/services/cli-config.d.ts.map +1 -1
- package/dist/services/cli-config.js +217 -29
- package/dist/services/cli-config.js.map +1 -1
- package/dist/services/compose-project.d.ts +6 -0
- package/dist/services/compose-project.d.ts.map +1 -1
- package/dist/services/compose-project.js +13 -2
- package/dist/services/compose-project.js.map +1 -1
- package/dist/services/diagnostics.d.ts.map +1 -1
- package/dist/services/diagnostics.js +9 -8
- package/dist/services/diagnostics.js.map +1 -1
- package/dist/services/instance-selection.d.ts.map +1 -1
- package/dist/services/instance-selection.js +2 -5
- package/dist/services/instance-selection.js.map +1 -1
- package/dist/services/url.d.ts +21 -0
- package/dist/services/url.d.ts.map +1 -0
- package/dist/services/url.js +61 -0
- package/dist/services/url.js.map +1 -0
- package/package.json +6 -5
- package/templates/demo-config/clients/presentation-test.json +1 -1
- package/templates/demo-config/clients/test.json +7 -2
- package/templates/demo-config/info.json +1 -1
- package/templates/demo-config/issuance/credentials/citizen.json +1 -1
- package/templates/demo-config/issuance/credentials/pid-key.json +1 -1
- package/templates/demo-config/issuance/credentials/pid-mdoc.json +1 -1
- package/templates/demo-config/issuance/credentials/pid.json +1 -1
- package/templates/demo-config/issuance/issuance.json +1 -1
- package/templates/demo-config/key-chains/access.json +1 -1
- package/templates/demo-config/key-chains/attestation.json +3 -2
- package/templates/demo-config/key-chains/status-list.json +6 -5
- package/templates/demo-config/key-chains/trust-list.json +1 -1
- package/templates/demo-config/presentation/age-over-18.json +1 -1
- package/templates/demo-config/presentation/pid.json +1 -1
- package/templates/docker-compose.yml +2 -2
- package/templates/schemas/ClientConfigFile.schema.json +134 -1
- package/templates/schemas/CreateClientDto.schema.json +5 -1
- package/templates/schemas/CreateFederationTrustAnchorDto.schema.json +82 -0
- package/templates/schemas/CreateRegistrarConfigDto.schema.json +29 -0
- package/templates/schemas/CreateTenantDto.schema.json +8 -4
- package/templates/schemas/CredentialConfigCreate.schema.json +242 -11
- package/templates/schemas/CredentialConfigFile.schema.json +1592 -1
- package/templates/schemas/FederationTrustAnchorConfigFile.schema.json +60 -0
- package/templates/schemas/IssuanceConfig.schema.json +122 -9
- package/templates/schemas/IssuanceConfigFile.schema.json +2247 -1
- package/templates/schemas/KeyChainConfigFile.schema.json +875 -119
- package/templates/schemas/KeyChainCreateDto.schema.json +12 -1
- package/templates/schemas/KeyChainDefaultsConfigFile.schema.json +123 -0
- package/templates/schemas/KeyChainImportDto.schema.json +10 -0
- package/templates/schemas/KmsConfigDto.schema.json +186 -0
- package/templates/schemas/KmsConfigFile.schema.json +1026 -1
- package/templates/schemas/PresentationConfigCreateDto.schema.json +16 -0
- package/templates/schemas/PresentationConfigFile.schema.json +746 -1
- package/templates/schemas/RegistrarConfigFile.schema.json +101 -1
- package/templates/schemas/RotationPolicyCreateDto.schema.json +1 -1
- package/templates/schemas/TenantConfigFile.schema.json +334 -64
- package/templates/schemas/UpdateClientDto.schema.json +5 -1
- package/templates/schemas/UpdateFederationTrustAnchorDto.schema.json +70 -0
- package/templates/schemas/UpdateStatusListConfigDto.schema.json +5 -5
- package/templates/schemas.manifest.json +4 -0
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"
|
|
3
|
+
"$id": "./KeyChainConfigFile.schema.json",
|
|
4
|
+
"title": "KeyChainConfigFile",
|
|
5
|
+
"description": "Configuration file identified by its $schema URL.",
|
|
6
|
+
"oneOf": [
|
|
4
7
|
{
|
|
5
8
|
"type": "object",
|
|
6
9
|
"properties": {
|
|
7
10
|
"$schema": {
|
|
8
11
|
"type": "string",
|
|
9
|
-
"const": "https://eudiplo.dev/schemas/
|
|
12
|
+
"const": "https://eudiplo.dev/schemas/v4/KeyChainConfigFile.schema.json"
|
|
10
13
|
},
|
|
11
14
|
"metadata": {
|
|
12
15
|
"type": "object",
|
|
@@ -39,12 +42,22 @@
|
|
|
39
42
|
"type": "string",
|
|
40
43
|
"enum": [
|
|
41
44
|
"access",
|
|
45
|
+
"authorizationServer",
|
|
42
46
|
"attestation",
|
|
43
47
|
"trustList",
|
|
44
48
|
"statusList",
|
|
49
|
+
"federation",
|
|
45
50
|
"encrypt"
|
|
46
51
|
]
|
|
47
52
|
},
|
|
53
|
+
"type": {
|
|
54
|
+
"description": "Key chain type. For a `private-jwk` key source without `activeJwk`, `standalone` makes `jwk` the signing key and `crt` its chain, leaf first; `internalChain` makes `jwk` a CA key and the last `crt` entry its CA certificate (created if `crt` is omitted), and the import generates a new signing key with a certificate issued by it. Without `type`, `jwk` is a CA key only if `rotationPolicy.enabled` is true and `crt` is not a single self-signed certificate that is not a CA. For `regenerate`, it is the type of the new key chain and must equal `keySource.keyChainType` if both are set. For the other key sources, it must match the key chain they describe.",
|
|
55
|
+
"type": "string",
|
|
56
|
+
"enum": [
|
|
57
|
+
"standalone",
|
|
58
|
+
"internalChain"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
48
61
|
"keySource": {
|
|
49
62
|
"oneOf": [
|
|
50
63
|
{
|
|
@@ -358,123 +371,9 @@
|
|
|
358
371
|
"additionalProperties": false
|
|
359
372
|
},
|
|
360
373
|
{
|
|
361
|
-
"
|
|
362
|
-
"
|
|
363
|
-
|
|
364
|
-
"description": "Optional key chain id. If omitted, one is generated.",
|
|
365
|
-
"type": "string"
|
|
366
|
-
},
|
|
367
|
-
"key": {
|
|
368
|
-
"description": "Private key material in JWK format.",
|
|
369
|
-
"type": "object",
|
|
370
|
-
"properties": {
|
|
371
|
-
"kty": {
|
|
372
|
-
"type": "string",
|
|
373
|
-
"description": "Key type (for example EC)."
|
|
374
|
-
},
|
|
375
|
-
"x": {
|
|
376
|
-
"type": "string",
|
|
377
|
-
"description": "Elliptic curve public x coordinate."
|
|
378
|
-
},
|
|
379
|
-
"y": {
|
|
380
|
-
"type": "string",
|
|
381
|
-
"description": "Elliptic curve public y coordinate."
|
|
382
|
-
},
|
|
383
|
-
"crv": {
|
|
384
|
-
"type": "string",
|
|
385
|
-
"description": "Elliptic curve name."
|
|
386
|
-
},
|
|
387
|
-
"d": {
|
|
388
|
-
"type": "string",
|
|
389
|
-
"description": "Private key value."
|
|
390
|
-
},
|
|
391
|
-
"alg": {
|
|
392
|
-
"description": "Optional algorithm hint.",
|
|
393
|
-
"type": "string"
|
|
394
|
-
},
|
|
395
|
-
"kid": {
|
|
396
|
-
"description": "Optional key identifier.",
|
|
397
|
-
"type": "string"
|
|
398
|
-
}
|
|
399
|
-
},
|
|
400
|
-
"required": [
|
|
401
|
-
"kty",
|
|
402
|
-
"x",
|
|
403
|
-
"y",
|
|
404
|
-
"crv",
|
|
405
|
-
"d"
|
|
406
|
-
],
|
|
407
|
-
"additionalProperties": false
|
|
408
|
-
},
|
|
409
|
-
"keyPem": {
|
|
410
|
-
"description": "PKCS#8 PEM-encoded EC private key material.",
|
|
411
|
-
"type": "string",
|
|
412
|
-
"minLength": 1
|
|
413
|
-
},
|
|
414
|
-
"description": {
|
|
415
|
-
"description": "Optional key chain description.",
|
|
416
|
-
"type": "string"
|
|
417
|
-
},
|
|
418
|
-
"usageType": {
|
|
419
|
-
"type": "string",
|
|
420
|
-
"enum": [
|
|
421
|
-
"access",
|
|
422
|
-
"attestation",
|
|
423
|
-
"trustList",
|
|
424
|
-
"statusList",
|
|
425
|
-
"encrypt"
|
|
426
|
-
],
|
|
427
|
-
"description": "Key usage category for the imported key chain."
|
|
428
|
-
},
|
|
429
|
-
"crt": {
|
|
430
|
-
"description": "Optional certificate chain values in PEM or base64 DER.",
|
|
431
|
-
"type": "array",
|
|
432
|
-
"items": {
|
|
433
|
-
"type": "string"
|
|
434
|
-
}
|
|
435
|
-
},
|
|
436
|
-
"kmsProvider": {
|
|
437
|
-
"description": "Optional KMS provider id.",
|
|
438
|
-
"type": "string"
|
|
439
|
-
},
|
|
440
|
-
"rotationPolicy": {
|
|
441
|
-
"description": "Optional rotation policy for imported key chains.",
|
|
442
|
-
"type": "object",
|
|
443
|
-
"properties": {
|
|
444
|
-
"enabled": {
|
|
445
|
-
"type": "boolean",
|
|
446
|
-
"description": "Enable automatic rotation for imported key chains."
|
|
447
|
-
},
|
|
448
|
-
"intervalDays": {
|
|
449
|
-
"description": "Rotation interval in days.",
|
|
450
|
-
"type": "number",
|
|
451
|
-
"minimum": 1,
|
|
452
|
-
"maximum": 3650
|
|
453
|
-
},
|
|
454
|
-
"certValidityDays": {
|
|
455
|
-
"description": "Certificate validity period in days.",
|
|
456
|
-
"type": "number",
|
|
457
|
-
"minimum": 1,
|
|
458
|
-
"maximum": 3650
|
|
459
|
-
}
|
|
460
|
-
},
|
|
461
|
-
"required": [
|
|
462
|
-
"enabled"
|
|
463
|
-
],
|
|
464
|
-
"additionalProperties": false
|
|
465
|
-
}
|
|
466
|
-
},
|
|
467
|
-
"required": [
|
|
468
|
-
"usageType"
|
|
469
|
-
],
|
|
470
|
-
"additionalProperties": false
|
|
471
|
-
}
|
|
472
|
-
],
|
|
473
|
-
"$id": "./KeyChainConfigFile.schema.json",
|
|
474
|
-
"title": "KeyChainConfigFile",
|
|
475
|
-
"description": "Configuration file identified by its $schema URL.",
|
|
476
|
-
"oneOf": [
|
|
477
|
-
{
|
|
374
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
375
|
+
"$id": "https://eudiplo.dev/schemas/v1/KeyChainConfigFile.schema.json",
|
|
376
|
+
"title": "KeyChainConfigFile",
|
|
478
377
|
"type": "object",
|
|
479
378
|
"properties": {
|
|
480
379
|
"$schema": {
|
|
@@ -829,6 +728,863 @@
|
|
|
829
728
|
"spec"
|
|
830
729
|
],
|
|
831
730
|
"additionalProperties": false
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
734
|
+
"$id": "https://eudiplo.dev/schemas/v2/KeyChainConfigFile.schema.json",
|
|
735
|
+
"title": "KeyChainConfigFile",
|
|
736
|
+
"type": "object",
|
|
737
|
+
"properties": {
|
|
738
|
+
"$schema": {
|
|
739
|
+
"type": "string",
|
|
740
|
+
"const": "https://eudiplo.dev/schemas/v2/KeyChainConfigFile.schema.json"
|
|
741
|
+
},
|
|
742
|
+
"metadata": {
|
|
743
|
+
"type": "object",
|
|
744
|
+
"properties": {
|
|
745
|
+
"generation": {
|
|
746
|
+
"type": "integer",
|
|
747
|
+
"minimum": 1,
|
|
748
|
+
"maximum": 9007199254740991
|
|
749
|
+
},
|
|
750
|
+
"ownership": {
|
|
751
|
+
"type": "string",
|
|
752
|
+
"enum": [
|
|
753
|
+
"unmanaged",
|
|
754
|
+
"file-managed"
|
|
755
|
+
]
|
|
756
|
+
}
|
|
757
|
+
},
|
|
758
|
+
"additionalProperties": false
|
|
759
|
+
},
|
|
760
|
+
"spec": {
|
|
761
|
+
"type": "object",
|
|
762
|
+
"properties": {
|
|
763
|
+
"id": {
|
|
764
|
+
"type": "string"
|
|
765
|
+
},
|
|
766
|
+
"description": {
|
|
767
|
+
"type": "string"
|
|
768
|
+
},
|
|
769
|
+
"usageType": {
|
|
770
|
+
"type": "string",
|
|
771
|
+
"enum": [
|
|
772
|
+
"access",
|
|
773
|
+
"attestation",
|
|
774
|
+
"trustList",
|
|
775
|
+
"statusList",
|
|
776
|
+
"encrypt"
|
|
777
|
+
]
|
|
778
|
+
},
|
|
779
|
+
"type": {
|
|
780
|
+
"description": "Key chain type. For a `private-jwk` key source without `activeJwk`, `standalone` makes `jwk` the signing key and `crt` its chain, leaf first; `internalChain` makes `jwk` a CA key and the last `crt` entry its CA certificate (created if `crt` is omitted), and the import generates a new signing key with a certificate issued by it. Without `type`, `jwk` is a CA key only if `rotationPolicy.enabled` is true and `crt` is not a single self-signed certificate that is not a CA. For `regenerate`, it is the type of the new key chain and must equal `keySource.keyChainType` if both are set. For the other key sources, it must match the key chain they describe.",
|
|
781
|
+
"type": "string",
|
|
782
|
+
"enum": [
|
|
783
|
+
"standalone",
|
|
784
|
+
"internalChain"
|
|
785
|
+
]
|
|
786
|
+
},
|
|
787
|
+
"keySource": {
|
|
788
|
+
"oneOf": [
|
|
789
|
+
{
|
|
790
|
+
"type": "object",
|
|
791
|
+
"properties": {
|
|
792
|
+
"type": {
|
|
793
|
+
"type": "string",
|
|
794
|
+
"const": "private-jwk"
|
|
795
|
+
},
|
|
796
|
+
"jwk": {
|
|
797
|
+
"type": "object",
|
|
798
|
+
"properties": {
|
|
799
|
+
"kty": {
|
|
800
|
+
"type": "string",
|
|
801
|
+
"description": "Key type (for example EC)."
|
|
802
|
+
},
|
|
803
|
+
"x": {
|
|
804
|
+
"type": "string",
|
|
805
|
+
"description": "Elliptic curve public x coordinate."
|
|
806
|
+
},
|
|
807
|
+
"y": {
|
|
808
|
+
"type": "string",
|
|
809
|
+
"description": "Elliptic curve public y coordinate."
|
|
810
|
+
},
|
|
811
|
+
"crv": {
|
|
812
|
+
"type": "string",
|
|
813
|
+
"description": "Elliptic curve name."
|
|
814
|
+
},
|
|
815
|
+
"d": {
|
|
816
|
+
"type": "string",
|
|
817
|
+
"description": "Private key value."
|
|
818
|
+
},
|
|
819
|
+
"alg": {
|
|
820
|
+
"description": "Optional algorithm hint.",
|
|
821
|
+
"type": "string"
|
|
822
|
+
},
|
|
823
|
+
"kid": {
|
|
824
|
+
"description": "Optional key identifier.",
|
|
825
|
+
"type": "string"
|
|
826
|
+
}
|
|
827
|
+
},
|
|
828
|
+
"required": [
|
|
829
|
+
"kty",
|
|
830
|
+
"x",
|
|
831
|
+
"y",
|
|
832
|
+
"crv",
|
|
833
|
+
"d"
|
|
834
|
+
],
|
|
835
|
+
"additionalProperties": false
|
|
836
|
+
},
|
|
837
|
+
"activeJwk": {
|
|
838
|
+
"type": "object",
|
|
839
|
+
"properties": {
|
|
840
|
+
"kty": {
|
|
841
|
+
"type": "string",
|
|
842
|
+
"description": "Key type (for example EC)."
|
|
843
|
+
},
|
|
844
|
+
"x": {
|
|
845
|
+
"type": "string",
|
|
846
|
+
"description": "Elliptic curve public x coordinate."
|
|
847
|
+
},
|
|
848
|
+
"y": {
|
|
849
|
+
"type": "string",
|
|
850
|
+
"description": "Elliptic curve public y coordinate."
|
|
851
|
+
},
|
|
852
|
+
"crv": {
|
|
853
|
+
"type": "string",
|
|
854
|
+
"description": "Elliptic curve name."
|
|
855
|
+
},
|
|
856
|
+
"d": {
|
|
857
|
+
"type": "string",
|
|
858
|
+
"description": "Private key value."
|
|
859
|
+
},
|
|
860
|
+
"alg": {
|
|
861
|
+
"description": "Optional algorithm hint.",
|
|
862
|
+
"type": "string"
|
|
863
|
+
},
|
|
864
|
+
"kid": {
|
|
865
|
+
"description": "Optional key identifier.",
|
|
866
|
+
"type": "string"
|
|
867
|
+
}
|
|
868
|
+
},
|
|
869
|
+
"required": [
|
|
870
|
+
"kty",
|
|
871
|
+
"x",
|
|
872
|
+
"y",
|
|
873
|
+
"crv",
|
|
874
|
+
"d"
|
|
875
|
+
],
|
|
876
|
+
"additionalProperties": false
|
|
877
|
+
}
|
|
878
|
+
},
|
|
879
|
+
"required": [
|
|
880
|
+
"type",
|
|
881
|
+
"jwk"
|
|
882
|
+
],
|
|
883
|
+
"additionalProperties": false
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
"type": "object",
|
|
887
|
+
"properties": {
|
|
888
|
+
"type": {
|
|
889
|
+
"type": "string",
|
|
890
|
+
"const": "external-reference"
|
|
891
|
+
},
|
|
892
|
+
"provider": {
|
|
893
|
+
"type": "string"
|
|
894
|
+
},
|
|
895
|
+
"externalKeyId": {
|
|
896
|
+
"type": "string"
|
|
897
|
+
},
|
|
898
|
+
"publicJwk": {
|
|
899
|
+
"type": "object",
|
|
900
|
+
"properties": {
|
|
901
|
+
"kty": {
|
|
902
|
+
"type": "string"
|
|
903
|
+
},
|
|
904
|
+
"x": {
|
|
905
|
+
"type": "string"
|
|
906
|
+
},
|
|
907
|
+
"y": {
|
|
908
|
+
"type": "string"
|
|
909
|
+
},
|
|
910
|
+
"crv": {
|
|
911
|
+
"type": "string"
|
|
912
|
+
},
|
|
913
|
+
"alg": {
|
|
914
|
+
"type": "string"
|
|
915
|
+
},
|
|
916
|
+
"kid": {
|
|
917
|
+
"type": "string"
|
|
918
|
+
}
|
|
919
|
+
},
|
|
920
|
+
"required": [
|
|
921
|
+
"kty",
|
|
922
|
+
"x",
|
|
923
|
+
"y",
|
|
924
|
+
"crv"
|
|
925
|
+
],
|
|
926
|
+
"additionalProperties": false
|
|
927
|
+
},
|
|
928
|
+
"activeExternalKeyId": {
|
|
929
|
+
"type": "string"
|
|
930
|
+
},
|
|
931
|
+
"activePublicJwk": {
|
|
932
|
+
"type": "object",
|
|
933
|
+
"properties": {
|
|
934
|
+
"kty": {
|
|
935
|
+
"type": "string"
|
|
936
|
+
},
|
|
937
|
+
"x": {
|
|
938
|
+
"type": "string"
|
|
939
|
+
},
|
|
940
|
+
"y": {
|
|
941
|
+
"type": "string"
|
|
942
|
+
},
|
|
943
|
+
"crv": {
|
|
944
|
+
"type": "string"
|
|
945
|
+
},
|
|
946
|
+
"alg": {
|
|
947
|
+
"type": "string"
|
|
948
|
+
},
|
|
949
|
+
"kid": {
|
|
950
|
+
"type": "string"
|
|
951
|
+
}
|
|
952
|
+
},
|
|
953
|
+
"required": [
|
|
954
|
+
"kty",
|
|
955
|
+
"x",
|
|
956
|
+
"y",
|
|
957
|
+
"crv"
|
|
958
|
+
],
|
|
959
|
+
"additionalProperties": false
|
|
960
|
+
}
|
|
961
|
+
},
|
|
962
|
+
"required": [
|
|
963
|
+
"type",
|
|
964
|
+
"provider",
|
|
965
|
+
"externalKeyId",
|
|
966
|
+
"publicJwk"
|
|
967
|
+
],
|
|
968
|
+
"additionalProperties": false
|
|
969
|
+
},
|
|
970
|
+
{
|
|
971
|
+
"type": "object",
|
|
972
|
+
"properties": {
|
|
973
|
+
"type": {
|
|
974
|
+
"type": "string",
|
|
975
|
+
"const": "required"
|
|
976
|
+
},
|
|
977
|
+
"publicJwk": {
|
|
978
|
+
"type": "object",
|
|
979
|
+
"properties": {
|
|
980
|
+
"kty": {
|
|
981
|
+
"type": "string"
|
|
982
|
+
},
|
|
983
|
+
"x": {
|
|
984
|
+
"type": "string"
|
|
985
|
+
},
|
|
986
|
+
"y": {
|
|
987
|
+
"type": "string"
|
|
988
|
+
},
|
|
989
|
+
"crv": {
|
|
990
|
+
"type": "string"
|
|
991
|
+
},
|
|
992
|
+
"alg": {
|
|
993
|
+
"type": "string"
|
|
994
|
+
},
|
|
995
|
+
"kid": {
|
|
996
|
+
"type": "string"
|
|
997
|
+
}
|
|
998
|
+
},
|
|
999
|
+
"required": [
|
|
1000
|
+
"kty",
|
|
1001
|
+
"x",
|
|
1002
|
+
"y",
|
|
1003
|
+
"crv"
|
|
1004
|
+
],
|
|
1005
|
+
"additionalProperties": false
|
|
1006
|
+
}
|
|
1007
|
+
},
|
|
1008
|
+
"required": [
|
|
1009
|
+
"type"
|
|
1010
|
+
],
|
|
1011
|
+
"additionalProperties": false
|
|
1012
|
+
},
|
|
1013
|
+
{
|
|
1014
|
+
"type": "object",
|
|
1015
|
+
"properties": {
|
|
1016
|
+
"type": {
|
|
1017
|
+
"type": "string",
|
|
1018
|
+
"const": "regenerate"
|
|
1019
|
+
},
|
|
1020
|
+
"keyChainType": {
|
|
1021
|
+
"type": "string",
|
|
1022
|
+
"enum": [
|
|
1023
|
+
"standalone",
|
|
1024
|
+
"internalChain"
|
|
1025
|
+
]
|
|
1026
|
+
}
|
|
1027
|
+
},
|
|
1028
|
+
"required": [
|
|
1029
|
+
"type"
|
|
1030
|
+
],
|
|
1031
|
+
"additionalProperties": false
|
|
1032
|
+
}
|
|
1033
|
+
]
|
|
1034
|
+
},
|
|
1035
|
+
"crt": {
|
|
1036
|
+
"type": "array",
|
|
1037
|
+
"items": {
|
|
1038
|
+
"type": "string"
|
|
1039
|
+
}
|
|
1040
|
+
},
|
|
1041
|
+
"activeCertificate": {
|
|
1042
|
+
"description": "Active certificate for an internal key chain.",
|
|
1043
|
+
"type": "string"
|
|
1044
|
+
},
|
|
1045
|
+
"kmsProvider": {
|
|
1046
|
+
"type": "string"
|
|
1047
|
+
},
|
|
1048
|
+
"rotationPolicy": {
|
|
1049
|
+
"type": "object",
|
|
1050
|
+
"properties": {
|
|
1051
|
+
"enabled": {
|
|
1052
|
+
"type": "boolean"
|
|
1053
|
+
},
|
|
1054
|
+
"intervalDays": {
|
|
1055
|
+
"anyOf": [
|
|
1056
|
+
{
|
|
1057
|
+
"type": "number",
|
|
1058
|
+
"minimum": 1,
|
|
1059
|
+
"maximum": 3650
|
|
1060
|
+
},
|
|
1061
|
+
{
|
|
1062
|
+
"type": "null"
|
|
1063
|
+
}
|
|
1064
|
+
]
|
|
1065
|
+
},
|
|
1066
|
+
"certValidityDays": {
|
|
1067
|
+
"anyOf": [
|
|
1068
|
+
{
|
|
1069
|
+
"type": "number",
|
|
1070
|
+
"minimum": 1,
|
|
1071
|
+
"maximum": 3650
|
|
1072
|
+
},
|
|
1073
|
+
{
|
|
1074
|
+
"type": "null"
|
|
1075
|
+
}
|
|
1076
|
+
]
|
|
1077
|
+
}
|
|
1078
|
+
},
|
|
1079
|
+
"required": [
|
|
1080
|
+
"enabled"
|
|
1081
|
+
],
|
|
1082
|
+
"additionalProperties": false
|
|
1083
|
+
}
|
|
1084
|
+
},
|
|
1085
|
+
"required": [
|
|
1086
|
+
"usageType",
|
|
1087
|
+
"keySource"
|
|
1088
|
+
],
|
|
1089
|
+
"additionalProperties": false
|
|
1090
|
+
}
|
|
1091
|
+
},
|
|
1092
|
+
"required": [
|
|
1093
|
+
"$schema",
|
|
1094
|
+
"metadata",
|
|
1095
|
+
"spec"
|
|
1096
|
+
],
|
|
1097
|
+
"additionalProperties": false
|
|
1098
|
+
},
|
|
1099
|
+
{
|
|
1100
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
1101
|
+
"$id": "https://eudiplo.dev/schemas/v3/KeyChainConfigFile.schema.json",
|
|
1102
|
+
"title": "KeyChainConfigFile",
|
|
1103
|
+
"type": "object",
|
|
1104
|
+
"properties": {
|
|
1105
|
+
"$schema": {
|
|
1106
|
+
"type": "string",
|
|
1107
|
+
"const": "https://eudiplo.dev/schemas/v3/KeyChainConfigFile.schema.json"
|
|
1108
|
+
},
|
|
1109
|
+
"metadata": {
|
|
1110
|
+
"type": "object",
|
|
1111
|
+
"properties": {
|
|
1112
|
+
"generation": {
|
|
1113
|
+
"type": "integer",
|
|
1114
|
+
"minimum": 1,
|
|
1115
|
+
"maximum": 9007199254740991
|
|
1116
|
+
},
|
|
1117
|
+
"ownership": {
|
|
1118
|
+
"type": "string",
|
|
1119
|
+
"enum": [
|
|
1120
|
+
"unmanaged",
|
|
1121
|
+
"file-managed"
|
|
1122
|
+
]
|
|
1123
|
+
}
|
|
1124
|
+
},
|
|
1125
|
+
"additionalProperties": false
|
|
1126
|
+
},
|
|
1127
|
+
"spec": {
|
|
1128
|
+
"type": "object",
|
|
1129
|
+
"properties": {
|
|
1130
|
+
"id": {
|
|
1131
|
+
"type": "string"
|
|
1132
|
+
},
|
|
1133
|
+
"description": {
|
|
1134
|
+
"type": "string"
|
|
1135
|
+
},
|
|
1136
|
+
"usageType": {
|
|
1137
|
+
"type": "string",
|
|
1138
|
+
"enum": [
|
|
1139
|
+
"access",
|
|
1140
|
+
"attestation",
|
|
1141
|
+
"trustList",
|
|
1142
|
+
"statusList",
|
|
1143
|
+
"federation",
|
|
1144
|
+
"encrypt"
|
|
1145
|
+
]
|
|
1146
|
+
},
|
|
1147
|
+
"type": {
|
|
1148
|
+
"description": "Key chain type. For a `private-jwk` key source without `activeJwk`, `standalone` makes `jwk` the signing key and `crt` its chain, leaf first; `internalChain` makes `jwk` a CA key and the last `crt` entry its CA certificate (created if `crt` is omitted), and the import generates a new signing key with a certificate issued by it. Without `type`, `jwk` is a CA key only if `rotationPolicy.enabled` is true and `crt` is not a single self-signed certificate that is not a CA. For `regenerate`, it is the type of the new key chain and must equal `keySource.keyChainType` if both are set. For the other key sources, it must match the key chain they describe.",
|
|
1149
|
+
"type": "string",
|
|
1150
|
+
"enum": [
|
|
1151
|
+
"standalone",
|
|
1152
|
+
"internalChain"
|
|
1153
|
+
]
|
|
1154
|
+
},
|
|
1155
|
+
"keySource": {
|
|
1156
|
+
"oneOf": [
|
|
1157
|
+
{
|
|
1158
|
+
"type": "object",
|
|
1159
|
+
"properties": {
|
|
1160
|
+
"type": {
|
|
1161
|
+
"type": "string",
|
|
1162
|
+
"const": "private-jwk"
|
|
1163
|
+
},
|
|
1164
|
+
"jwk": {
|
|
1165
|
+
"type": "object",
|
|
1166
|
+
"properties": {
|
|
1167
|
+
"kty": {
|
|
1168
|
+
"type": "string",
|
|
1169
|
+
"description": "Key type (for example EC)."
|
|
1170
|
+
},
|
|
1171
|
+
"x": {
|
|
1172
|
+
"type": "string",
|
|
1173
|
+
"description": "Elliptic curve public x coordinate."
|
|
1174
|
+
},
|
|
1175
|
+
"y": {
|
|
1176
|
+
"type": "string",
|
|
1177
|
+
"description": "Elliptic curve public y coordinate."
|
|
1178
|
+
},
|
|
1179
|
+
"crv": {
|
|
1180
|
+
"type": "string",
|
|
1181
|
+
"description": "Elliptic curve name."
|
|
1182
|
+
},
|
|
1183
|
+
"d": {
|
|
1184
|
+
"type": "string",
|
|
1185
|
+
"description": "Private key value."
|
|
1186
|
+
},
|
|
1187
|
+
"alg": {
|
|
1188
|
+
"description": "Optional algorithm hint.",
|
|
1189
|
+
"type": "string"
|
|
1190
|
+
},
|
|
1191
|
+
"kid": {
|
|
1192
|
+
"description": "Optional key identifier.",
|
|
1193
|
+
"type": "string"
|
|
1194
|
+
}
|
|
1195
|
+
},
|
|
1196
|
+
"required": [
|
|
1197
|
+
"kty",
|
|
1198
|
+
"x",
|
|
1199
|
+
"y",
|
|
1200
|
+
"crv",
|
|
1201
|
+
"d"
|
|
1202
|
+
],
|
|
1203
|
+
"additionalProperties": false
|
|
1204
|
+
},
|
|
1205
|
+
"activeJwk": {
|
|
1206
|
+
"type": "object",
|
|
1207
|
+
"properties": {
|
|
1208
|
+
"kty": {
|
|
1209
|
+
"type": "string",
|
|
1210
|
+
"description": "Key type (for example EC)."
|
|
1211
|
+
},
|
|
1212
|
+
"x": {
|
|
1213
|
+
"type": "string",
|
|
1214
|
+
"description": "Elliptic curve public x coordinate."
|
|
1215
|
+
},
|
|
1216
|
+
"y": {
|
|
1217
|
+
"type": "string",
|
|
1218
|
+
"description": "Elliptic curve public y coordinate."
|
|
1219
|
+
},
|
|
1220
|
+
"crv": {
|
|
1221
|
+
"type": "string",
|
|
1222
|
+
"description": "Elliptic curve name."
|
|
1223
|
+
},
|
|
1224
|
+
"d": {
|
|
1225
|
+
"type": "string",
|
|
1226
|
+
"description": "Private key value."
|
|
1227
|
+
},
|
|
1228
|
+
"alg": {
|
|
1229
|
+
"description": "Optional algorithm hint.",
|
|
1230
|
+
"type": "string"
|
|
1231
|
+
},
|
|
1232
|
+
"kid": {
|
|
1233
|
+
"description": "Optional key identifier.",
|
|
1234
|
+
"type": "string"
|
|
1235
|
+
}
|
|
1236
|
+
},
|
|
1237
|
+
"required": [
|
|
1238
|
+
"kty",
|
|
1239
|
+
"x",
|
|
1240
|
+
"y",
|
|
1241
|
+
"crv",
|
|
1242
|
+
"d"
|
|
1243
|
+
],
|
|
1244
|
+
"additionalProperties": false
|
|
1245
|
+
}
|
|
1246
|
+
},
|
|
1247
|
+
"required": [
|
|
1248
|
+
"type",
|
|
1249
|
+
"jwk"
|
|
1250
|
+
],
|
|
1251
|
+
"additionalProperties": false
|
|
1252
|
+
},
|
|
1253
|
+
{
|
|
1254
|
+
"type": "object",
|
|
1255
|
+
"properties": {
|
|
1256
|
+
"type": {
|
|
1257
|
+
"type": "string",
|
|
1258
|
+
"const": "external-reference"
|
|
1259
|
+
},
|
|
1260
|
+
"provider": {
|
|
1261
|
+
"type": "string"
|
|
1262
|
+
},
|
|
1263
|
+
"externalKeyId": {
|
|
1264
|
+
"type": "string"
|
|
1265
|
+
},
|
|
1266
|
+
"publicJwk": {
|
|
1267
|
+
"type": "object",
|
|
1268
|
+
"properties": {
|
|
1269
|
+
"kty": {
|
|
1270
|
+
"type": "string"
|
|
1271
|
+
},
|
|
1272
|
+
"x": {
|
|
1273
|
+
"type": "string"
|
|
1274
|
+
},
|
|
1275
|
+
"y": {
|
|
1276
|
+
"type": "string"
|
|
1277
|
+
},
|
|
1278
|
+
"crv": {
|
|
1279
|
+
"type": "string"
|
|
1280
|
+
},
|
|
1281
|
+
"alg": {
|
|
1282
|
+
"type": "string"
|
|
1283
|
+
},
|
|
1284
|
+
"kid": {
|
|
1285
|
+
"type": "string"
|
|
1286
|
+
}
|
|
1287
|
+
},
|
|
1288
|
+
"required": [
|
|
1289
|
+
"kty",
|
|
1290
|
+
"x",
|
|
1291
|
+
"y",
|
|
1292
|
+
"crv"
|
|
1293
|
+
],
|
|
1294
|
+
"additionalProperties": false
|
|
1295
|
+
},
|
|
1296
|
+
"activeExternalKeyId": {
|
|
1297
|
+
"type": "string"
|
|
1298
|
+
},
|
|
1299
|
+
"activePublicJwk": {
|
|
1300
|
+
"type": "object",
|
|
1301
|
+
"properties": {
|
|
1302
|
+
"kty": {
|
|
1303
|
+
"type": "string"
|
|
1304
|
+
},
|
|
1305
|
+
"x": {
|
|
1306
|
+
"type": "string"
|
|
1307
|
+
},
|
|
1308
|
+
"y": {
|
|
1309
|
+
"type": "string"
|
|
1310
|
+
},
|
|
1311
|
+
"crv": {
|
|
1312
|
+
"type": "string"
|
|
1313
|
+
},
|
|
1314
|
+
"alg": {
|
|
1315
|
+
"type": "string"
|
|
1316
|
+
},
|
|
1317
|
+
"kid": {
|
|
1318
|
+
"type": "string"
|
|
1319
|
+
}
|
|
1320
|
+
},
|
|
1321
|
+
"required": [
|
|
1322
|
+
"kty",
|
|
1323
|
+
"x",
|
|
1324
|
+
"y",
|
|
1325
|
+
"crv"
|
|
1326
|
+
],
|
|
1327
|
+
"additionalProperties": false
|
|
1328
|
+
}
|
|
1329
|
+
},
|
|
1330
|
+
"required": [
|
|
1331
|
+
"type",
|
|
1332
|
+
"provider",
|
|
1333
|
+
"externalKeyId",
|
|
1334
|
+
"publicJwk"
|
|
1335
|
+
],
|
|
1336
|
+
"additionalProperties": false
|
|
1337
|
+
},
|
|
1338
|
+
{
|
|
1339
|
+
"type": "object",
|
|
1340
|
+
"properties": {
|
|
1341
|
+
"type": {
|
|
1342
|
+
"type": "string",
|
|
1343
|
+
"const": "required"
|
|
1344
|
+
},
|
|
1345
|
+
"publicJwk": {
|
|
1346
|
+
"type": "object",
|
|
1347
|
+
"properties": {
|
|
1348
|
+
"kty": {
|
|
1349
|
+
"type": "string"
|
|
1350
|
+
},
|
|
1351
|
+
"x": {
|
|
1352
|
+
"type": "string"
|
|
1353
|
+
},
|
|
1354
|
+
"y": {
|
|
1355
|
+
"type": "string"
|
|
1356
|
+
},
|
|
1357
|
+
"crv": {
|
|
1358
|
+
"type": "string"
|
|
1359
|
+
},
|
|
1360
|
+
"alg": {
|
|
1361
|
+
"type": "string"
|
|
1362
|
+
},
|
|
1363
|
+
"kid": {
|
|
1364
|
+
"type": "string"
|
|
1365
|
+
}
|
|
1366
|
+
},
|
|
1367
|
+
"required": [
|
|
1368
|
+
"kty",
|
|
1369
|
+
"x",
|
|
1370
|
+
"y",
|
|
1371
|
+
"crv"
|
|
1372
|
+
],
|
|
1373
|
+
"additionalProperties": false
|
|
1374
|
+
}
|
|
1375
|
+
},
|
|
1376
|
+
"required": [
|
|
1377
|
+
"type"
|
|
1378
|
+
],
|
|
1379
|
+
"additionalProperties": false
|
|
1380
|
+
},
|
|
1381
|
+
{
|
|
1382
|
+
"type": "object",
|
|
1383
|
+
"properties": {
|
|
1384
|
+
"type": {
|
|
1385
|
+
"type": "string",
|
|
1386
|
+
"const": "regenerate"
|
|
1387
|
+
},
|
|
1388
|
+
"keyChainType": {
|
|
1389
|
+
"type": "string",
|
|
1390
|
+
"enum": [
|
|
1391
|
+
"standalone",
|
|
1392
|
+
"internalChain"
|
|
1393
|
+
]
|
|
1394
|
+
}
|
|
1395
|
+
},
|
|
1396
|
+
"required": [
|
|
1397
|
+
"type"
|
|
1398
|
+
],
|
|
1399
|
+
"additionalProperties": false
|
|
1400
|
+
}
|
|
1401
|
+
]
|
|
1402
|
+
},
|
|
1403
|
+
"crt": {
|
|
1404
|
+
"type": "array",
|
|
1405
|
+
"items": {
|
|
1406
|
+
"type": "string"
|
|
1407
|
+
}
|
|
1408
|
+
},
|
|
1409
|
+
"activeCertificate": {
|
|
1410
|
+
"description": "Active certificate for an internal key chain.",
|
|
1411
|
+
"type": "string"
|
|
1412
|
+
},
|
|
1413
|
+
"kmsProvider": {
|
|
1414
|
+
"type": "string"
|
|
1415
|
+
},
|
|
1416
|
+
"rotationPolicy": {
|
|
1417
|
+
"type": "object",
|
|
1418
|
+
"properties": {
|
|
1419
|
+
"enabled": {
|
|
1420
|
+
"type": "boolean"
|
|
1421
|
+
},
|
|
1422
|
+
"intervalDays": {
|
|
1423
|
+
"anyOf": [
|
|
1424
|
+
{
|
|
1425
|
+
"type": "number",
|
|
1426
|
+
"minimum": 1,
|
|
1427
|
+
"maximum": 3650
|
|
1428
|
+
},
|
|
1429
|
+
{
|
|
1430
|
+
"type": "null"
|
|
1431
|
+
}
|
|
1432
|
+
]
|
|
1433
|
+
},
|
|
1434
|
+
"certValidityDays": {
|
|
1435
|
+
"anyOf": [
|
|
1436
|
+
{
|
|
1437
|
+
"type": "number",
|
|
1438
|
+
"minimum": 1,
|
|
1439
|
+
"maximum": 3650
|
|
1440
|
+
},
|
|
1441
|
+
{
|
|
1442
|
+
"type": "null"
|
|
1443
|
+
}
|
|
1444
|
+
]
|
|
1445
|
+
}
|
|
1446
|
+
},
|
|
1447
|
+
"required": [
|
|
1448
|
+
"enabled"
|
|
1449
|
+
],
|
|
1450
|
+
"additionalProperties": false
|
|
1451
|
+
}
|
|
1452
|
+
},
|
|
1453
|
+
"required": [
|
|
1454
|
+
"usageType",
|
|
1455
|
+
"keySource"
|
|
1456
|
+
],
|
|
1457
|
+
"additionalProperties": false
|
|
1458
|
+
}
|
|
1459
|
+
},
|
|
1460
|
+
"required": [
|
|
1461
|
+
"$schema",
|
|
1462
|
+
"metadata",
|
|
1463
|
+
"spec"
|
|
1464
|
+
],
|
|
1465
|
+
"additionalProperties": false
|
|
1466
|
+
},
|
|
1467
|
+
{
|
|
1468
|
+
"type": "object",
|
|
1469
|
+
"properties": {
|
|
1470
|
+
"id": {
|
|
1471
|
+
"description": "Optional key chain id. If omitted, one is generated.",
|
|
1472
|
+
"type": "string"
|
|
1473
|
+
},
|
|
1474
|
+
"key": {
|
|
1475
|
+
"description": "Private key material in JWK format.",
|
|
1476
|
+
"type": "object",
|
|
1477
|
+
"properties": {
|
|
1478
|
+
"kty": {
|
|
1479
|
+
"type": "string",
|
|
1480
|
+
"description": "Key type (for example EC)."
|
|
1481
|
+
},
|
|
1482
|
+
"x": {
|
|
1483
|
+
"type": "string",
|
|
1484
|
+
"description": "Elliptic curve public x coordinate."
|
|
1485
|
+
},
|
|
1486
|
+
"y": {
|
|
1487
|
+
"type": "string",
|
|
1488
|
+
"description": "Elliptic curve public y coordinate."
|
|
1489
|
+
},
|
|
1490
|
+
"crv": {
|
|
1491
|
+
"type": "string",
|
|
1492
|
+
"description": "Elliptic curve name."
|
|
1493
|
+
},
|
|
1494
|
+
"d": {
|
|
1495
|
+
"type": "string",
|
|
1496
|
+
"description": "Private key value."
|
|
1497
|
+
},
|
|
1498
|
+
"alg": {
|
|
1499
|
+
"description": "Optional algorithm hint.",
|
|
1500
|
+
"type": "string"
|
|
1501
|
+
},
|
|
1502
|
+
"kid": {
|
|
1503
|
+
"description": "Optional key identifier.",
|
|
1504
|
+
"type": "string"
|
|
1505
|
+
}
|
|
1506
|
+
},
|
|
1507
|
+
"required": [
|
|
1508
|
+
"kty",
|
|
1509
|
+
"x",
|
|
1510
|
+
"y",
|
|
1511
|
+
"crv",
|
|
1512
|
+
"d"
|
|
1513
|
+
],
|
|
1514
|
+
"additionalProperties": false
|
|
1515
|
+
},
|
|
1516
|
+
"keyPem": {
|
|
1517
|
+
"description": "PKCS#8 PEM-encoded EC private key material.",
|
|
1518
|
+
"type": "string",
|
|
1519
|
+
"minLength": 1
|
|
1520
|
+
},
|
|
1521
|
+
"description": {
|
|
1522
|
+
"description": "Optional key chain description.",
|
|
1523
|
+
"type": "string"
|
|
1524
|
+
},
|
|
1525
|
+
"usageType": {
|
|
1526
|
+
"type": "string",
|
|
1527
|
+
"enum": [
|
|
1528
|
+
"access",
|
|
1529
|
+
"authorizationServer",
|
|
1530
|
+
"attestation",
|
|
1531
|
+
"trustList",
|
|
1532
|
+
"statusList",
|
|
1533
|
+
"federation",
|
|
1534
|
+
"encrypt"
|
|
1535
|
+
],
|
|
1536
|
+
"description": "Key usage category for the imported key chain."
|
|
1537
|
+
},
|
|
1538
|
+
"type": {
|
|
1539
|
+
"description": "Key chain type. `standalone`: `key` is the signing key and `crt` its chain, leaf first. `internalChain`: `key` is a CA key and the last `crt` entry its CA certificate (created if `crt` is omitted); the import generates a new signing key with a certificate issued by it. Without `type`, `key` is a CA key only if `rotationPolicy.enabled` is true and `crt` is not a single self-signed certificate that is not a CA.",
|
|
1540
|
+
"type": "string",
|
|
1541
|
+
"enum": [
|
|
1542
|
+
"standalone",
|
|
1543
|
+
"internalChain"
|
|
1544
|
+
]
|
|
1545
|
+
},
|
|
1546
|
+
"crt": {
|
|
1547
|
+
"description": "Optional certificate chain values in PEM or base64 DER.",
|
|
1548
|
+
"type": "array",
|
|
1549
|
+
"items": {
|
|
1550
|
+
"type": "string"
|
|
1551
|
+
}
|
|
1552
|
+
},
|
|
1553
|
+
"kmsProvider": {
|
|
1554
|
+
"description": "Optional KMS provider id.",
|
|
1555
|
+
"type": "string"
|
|
1556
|
+
},
|
|
1557
|
+
"rotationPolicy": {
|
|
1558
|
+
"description": "Optional rotation policy for imported key chains.",
|
|
1559
|
+
"type": "object",
|
|
1560
|
+
"properties": {
|
|
1561
|
+
"enabled": {
|
|
1562
|
+
"type": "boolean",
|
|
1563
|
+
"description": "Enable automatic rotation for imported key chains."
|
|
1564
|
+
},
|
|
1565
|
+
"intervalDays": {
|
|
1566
|
+
"description": "Rotation interval in days.",
|
|
1567
|
+
"type": "number",
|
|
1568
|
+
"minimum": 1,
|
|
1569
|
+
"maximum": 3650
|
|
1570
|
+
},
|
|
1571
|
+
"certValidityDays": {
|
|
1572
|
+
"description": "Certificate validity period in days.",
|
|
1573
|
+
"type": "number",
|
|
1574
|
+
"minimum": 1,
|
|
1575
|
+
"maximum": 3650
|
|
1576
|
+
}
|
|
1577
|
+
},
|
|
1578
|
+
"required": [
|
|
1579
|
+
"enabled"
|
|
1580
|
+
],
|
|
1581
|
+
"additionalProperties": false
|
|
1582
|
+
}
|
|
1583
|
+
},
|
|
1584
|
+
"required": [
|
|
1585
|
+
"usageType"
|
|
1586
|
+
],
|
|
1587
|
+
"additionalProperties": false
|
|
832
1588
|
}
|
|
833
1589
|
]
|
|
834
1590
|
}
|