Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kesconf: expose public API #414

Merged
merged 2 commits into from
Nov 9, 2023
Merged

kesconf: expose public API #414

merged 2 commits into from
Nov 9, 2023

Conversation

aead
Copy link
Member

@aead aead commented Oct 31, 2023

This commit exposes kes server confguration API and provides a dev server.

Now, the github.com/minio/kes/kesconf package exposes a stable API for reading the KES server configuration. This supersedes the kv package and removes the edge package.

Further, the KES server provides the --dev flag to start a KES server in development mode with a in-memory keystore. The --key, --cert and --auth are deprecated. Users should use the config file to provide such config options.

@aead aead requested a review from shtripat October 31, 2023 14:24
Copy link
Contributor

@shtripat shtripat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

few minor ones.
any specific verification needed?

cmd/kes/server.go Outdated Show resolved Hide resolved
internal/keystore/vault/vault.go Outdated Show resolved Hide resolved
kesconf/file.go Outdated Show resolved Hide resolved
aead added 2 commits November 9, 2023 12:53
This commit exposes kes server confguration API and
provides a dev server.

Now, the `github.com/minio/kes/kesconf` package exposes
a stable API for reading the KES server configuration.
This supersedes the `kv` package and removes the `edge`
package.

Further, the KES server provides the `--dev` flag to start
a KES server in development mode with a in-memory keystore.
The `--key`, `--cert` and `--auth` are deprecated. Users should
use the config file to provide such config options.

Signed-off-by: Andreas Auernhammer <github@aead.dev>
Signed-off-by: Andreas Auernhammer <github@aead.dev>
@aead aead force-pushed the kesconf-refactor branch from 1dc1e23 to 74f7a76 Compare November 9, 2023 11:53
@aead aead merged commit 2b39c33 into master Nov 9, 2023
7 checks passed
@aead aead deleted the kesconf-refactor branch November 9, 2023 12:22
lu1as added a commit to lu1as/kes that referenced this pull request Jan 21, 2024
The new TLS config introduced in PR minio#414 does not set client CAs.
So when enabling mTLS authentication, client requests fail with
`certificate signed by unknown authority`.
This commit fixes this by using the root CAs also for
authenticating mTLS clients.

Ref: minio#414
aead pushed a commit that referenced this pull request Feb 9, 2024
The new TLS config introduced in PR #414 does not set client CAs.
So when enabling mTLS authentication, client requests fail with
`certificate signed by unknown authority`.
This commit fixes this by using the root CAs also for
authenticating mTLS clients.

Ref: #414
pjuarezd added a commit to pjuarezd/operator that referenced this pull request Feb 22, 2024
…e used.

A breaking change in config file is making Operator fail, Operator needs to handle the config across different KES config versions.

minio/kes#414
Signed-off-by: pjuarezd <pjuarezd@users.noreply.github.com>
pjuarezd added a commit to pjuarezd/operator that referenced this pull request Feb 22, 2024
…Operator fail, Operator needs to handle the KES config variations across different KES versions.
harshavardhana pushed a commit to minio/operator that referenced this pull request Feb 23, 2024
…#1993)

A breaking change (minio/kes#414) in KES command arguments is making Operator fail, Operator needs to handle the KES config variations across different KES versions.
@dbackeus
Copy link

dbackeus commented Feb 27, 2024

@aead the --auth deprecation messages states:

'--auth' flag is deprecated and no longer honored. Specify the client certificate verification in the config file

However I have not found any documentation for how to set this flag inside the config file. Can you elaborate?

It's a bit confusing right now trying to follow the official KES docs such as https://min.io/docs/kes/concepts/ as they still mention usig the --auth flag to bypass CA verification. Also note that all the various MinIO tutorials are using self signed certificates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants