1
1
# Configuration
2
2
3
3
TKeeper is configured via environment variables or a YAML/JSON configuration file.
4
+ YAML configuration file should be placed at ` ./config/application.yaml ` , relatively to
4
5
5
6
## Required
6
7
@@ -36,6 +37,11 @@ keeper:
36
37
jwt :
37
38
jwks-location : " https://auth.example.com/.well-known/jwks.json"
38
39
refresh : 5m
40
+
41
+ ssl :
42
+ enabled : true
43
+ trust-store-path : /secure/truststore.p12
44
+ trust-store-password : changeit
39
45
` ` `
40
46
41
47
## Session Expiration
@@ -47,8 +53,8 @@ keeper:
47
53
48
54
- ` peers` define the list of participants (other nodes) in the threshold signing protocol.
49
55
- Each peer entry must include :
50
- - `id` : unique index ≥ 1 assigned during key initialization (Shamir share index)
51
- - `public-url` : the HTTP endpoint where this peer is reachable
56
+ - `id` : unique index ≥ 1 assigned during key initialization (Shamir share index).
57
+ - `public-url` : the HTTP endpoint where this peer is reachable.
52
58
53
59
> Detailed peer setup is covered in the key generation section.
54
60
@@ -60,9 +66,9 @@ The `seal` block defines how the local key share is encrypted and stored on disk
60
66
61
67
# ## Available `type` values:
62
68
63
- - `shamir` : local sealing using Shamir Secret Sharing
64
- - `aws` : sealing via AWS KMS
65
- - `google` : sealing via Google Cloud KMS
69
+ - `shamir` : local sealing using Shamir Secret Sharing.
70
+ - `aws` : sealing via AWS KMS.
71
+ - `google` : sealing via Google Cloud KMS.
66
72
67
73
Depending on the selected type, the corresponding sub-section (`shamir`, `aws`, or `google`) must be present.
68
74
78
84
threshold: 2
79
85
` ` `
80
86
81
- - `total` : number of shares to split the key into
82
- - `threshold` : minimum number of shares required to reconstruct the key
87
+ - `total` : number of shares to split the key into.
88
+ - `threshold` : minimum number of shares required to reconstruct the key.
83
89
84
90
> Manual `unseal` is required at application startup.
85
91
96
102
` ` `
97
103
98
104
- Authentication uses [default AWS Java SDK credential chain](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/credentials.html), including :
99
- - Environment variables
100
- - IAM roles (e.g., EC2, ECS)
101
- - AWS config/profile files
105
+ - Environment variables.
106
+ - IAM roles (e.g., EC2, ECS).
107
+ - AWS config/profile files.
102
108
103
109
> Unseal is automatic at startup.
104
110
@@ -117,13 +123,13 @@ seal:
117
123
` ` `
118
124
119
125
- Authentication uses [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/production), supporting :
120
- - Service accounts
121
- - GCE/GKE metadata server
122
- - Local credentials file
126
+ - Service accounts.
127
+ - GCE/GKE metadata server.
128
+ - Local credentials file.
123
129
124
130
> Unseal is automatic at startup.
125
131
126
- See [seal .md](seal .md) for more details on sealing and unsealing.
132
+ See [SEAL .md](SEAL .md) for more details on sealing and unsealing.
127
133
128
134
---
129
135
@@ -142,8 +148,25 @@ keeper:
142
148
` ` `
143
149
144
150
- `type` : authentication provider type. Currently, only `jwt` is supported.
145
- - `allowAnonymous` : whether unauthenticated requests are allowed
146
- - `jwt.jwks-location` : URL of the JWKS endpoint for public key retrieval
147
- - `jwt.refresh` : optional refresh interval for reloading the JWKS
148
- -
149
- See [auth.md](auth.md) for authentication options and JWT integration.
151
+ - `allowAnonymous` : whether unauthenticated requests are allowed.
152
+ - `jwt.jwks-location` : URL of the JWKS endpoint for public key retrieval.
153
+ - `jwt.refresh` : optional refresh interval for reloading the JWKS.
154
+
155
+ See [SEAL.md](AUTH.md) for authentication options and JWT integration.
156
+
157
+ ---
158
+
159
+ # # SSL
160
+ Outgoing SSL settings are defined under the `keeper.ssl` block :
161
+
162
+ ` ` ` yaml
163
+ keeper:
164
+ ssl:
165
+ enabled: true
166
+ trust-store-path: /secure/truststore.p12
167
+ trust-store-password: changeit
168
+ ` ` `
169
+
170
+ - `enabled` : whether non-default SSL truststore should be enabled.
171
+ - `trust-store-path` : path to PKCS12\JKS truststore file.
172
+ - `trust-store-password` : password to truststore file, previously specified in `trust-store-path`.
0 commit comments