minio/internal
Andreas Auernhammer 8b660e18f2
kms: add support for MinKMS and remove some unused/broken code (#19368)
This commit adds support for MinKMS. Now, there are three KMS
implementations in `internal/kms`: Builtin, MinIO KES and MinIO KMS.

Adding another KMS integration required some cleanup. In particular:
 - Various KMS APIs that haven't been and are not used have been
   removed. A lot of the code was broken anyway.
 - Metrics are now monitored by the `kms.KMS` itself. For basic
   metrics this is simpler than collecting metrics for external
   servers. In particular, each KES server returns its own metrics
   and no cluster-level view.
 - The builtin KMS now uses the same en/decryption implemented by
   MinKMS and KES. It still supports decryption of the previous
   ciphertext format. It's backwards compatible.
 - Data encryption keys now include a master key version since MinKMS
   supports multiple versions (~4 billion in total and 10000 concurrent)
   per key name.

Signed-off-by: Andreas Auernhammer <github@aead.dev>
2024-05-07 16:55:37 -07:00
..
amztime add codespell action (#18818) 2024-01-17 23:03:17 -08:00
arn Add more tests for ARN and its format (#19408) 2024-04-04 01:31:34 -07:00
auth enhance ListSVCs() API to return more info to avoid InfoSvc() (#19642) 2024-05-01 05:41:13 -07:00
bpool Reduce parallelReader allocs (#19558) 2024-04-19 09:44:59 -07:00
bucket ilm: Handle DeleteAllVersions action differently for DEL markers (#19481) 2024-04-30 18:11:10 -07:00
cachevalue debug: introduce support for configuring client connect WRITE deadline (#19170) 2024-03-01 08:00:42 -08:00
color add logrotate support for MinIO logs (#19641) 2024-05-01 10:57:52 -07:00
config kms: add support for MinKMS and remove some unused/broken code (#19368) 2024-05-07 16:55:37 -07:00
crypto kms: add support for MinKMS and remove some unused/broken code (#19368) 2024-05-07 16:55:37 -07:00
deadlineconn add deadlineConnections on remoteTransport (#16010) 2022-11-05 11:09:21 -07:00
disk Read drive IO stats from sysfs instead of procfs (#19131) 2024-02-26 11:34:50 -08:00
dsync use typos instead of codespell (#19088) 2024-02-21 22:26:06 -08:00
etag fix: some flyby typos in the code (#19212) 2024-03-10 14:09:36 -07:00
event ilm: Handle DeleteAllVersions action differently for DEL markers (#19481) 2024-04-30 18:11:10 -07:00
fips disable builds for go1.18 (#16332) 2022-12-30 11:37:07 -08:00
grid avoid data race for testing (#19635) 2024-04-30 08:03:35 -07:00
handlers send proper IPv6 names avoid bracketing notation (#18699) 2023-12-21 16:56:55 -08:00
hash deprecate usage of sha256-simd (#19621) 2024-04-25 23:31:35 -07:00
http simplify listener implementation setup customizations in right place (#19589) 2024-04-23 21:08:47 -07:00
init force all internal MinIO operations to be under UTC (#16009) 2022-11-04 16:44:38 -07:00
ioutil fix: get rid of large buffers (#19549) 2024-04-19 04:26:59 -07:00
jwt allow JWT parsing on large session policy based tokens (#17167) 2023-05-09 00:53:08 -07:00
kms kms: add support for MinKMS and remove some unused/broken code (#19368) 2024-05-07 16:55:37 -07:00
lock fix: linter errors in Windows specific code (#18276) 2023-10-18 11:08:15 -07:00
logger turn-off coloring if we have std{err,out} dumb terminals (#19667) 2024-05-03 17:17:57 -07:00
lsync cleanup Go linter settings (#16736) 2023-03-04 20:57:35 -08:00
mcontext Add X-Amz-Request-Id to internode calls (#16146) 2022-12-06 09:27:26 -08:00
mountinfo add codespell action (#18818) 2024-01-17 23:03:17 -08:00
net fix: return error when requested interface has no stats available (#17666) 2023-07-17 01:14:01 -07:00
once Support persistent queue store for loggers (#17121) 2023-05-08 21:20:31 -07:00
pubsub Fix tracing send on closed channel (#18982) 2024-02-06 08:57:30 -08:00
rest a bunch of fixes for error handling (#19627) 2024-04-28 10:53:50 -07:00
s3select use typos instead of codespell (#19088) 2024-02-21 22:26:06 -08:00
store Webhook targets refactor and bug fixes (#19275) 2024-03-25 09:44:20 -07:00