kes icon indicating copy to clipboard operation
kes copied to clipboard

ux feat: kes init

Open klauspost opened this issue 4 years ago • 0 comments

What is the problem you want to solve?

Stringing together a config can be a bit overwhelming. Make it easy to install kes on bare metal.

How do you want to solve it?

Add interactive kes init that will guide through configuration.

λ kes init
(loads config if present, if present the values will be default)

Specify IP address you would like to expose KES to?
> 0.0.0.0:7373_

Specify DNS name the server should use?
> localhost_

Would you like KES to generate certificates?
> Yes_

(If no, have them specify files)

Specify certificate file name prefix:
> server_

Generated server.key and server.cert...

Choose your cache configuration:

A) Liberal (5 minutes)
B) Moderate (1 minute)
C) Conservative (30 seconds)

> B_

Choose logging level:

A) Error logging
B) Audit Logging
C) Both

> A_

Select KMS Configuration:

A) Do not persist keys (in-memory only)
B) Hashicorp Vault
C) Fortanix SDKMS
D) Thales CipherTrust Manager / Gemalto KeySecure
E) AWS SecretsManager
F) GCP SecretManager
G) Azure KeyVault
H) File system (testing only)

> A_

Created config.yaml. Start server with 'kes server'.
λ 

Additional context

  1. Are there alternative solutions?

Just have it spit out a default config+certs.

  1. Would your solution cause a major breaking API change?

No

  1. Anything else that is important?

Maybe include policy generation, but it seems a bit excessive for initial setup.

klauspost avatar Dec 21 '21 11:12 klauspost