minio/internal/config
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
..
api set max versions to be IntMax to avoid premature failures (#19360) 2024-03-27 18:08:07 -07:00
batch stick to go1.19 go.mod (#18600) 2023-12-06 01:09:22 -08:00
browser allow protection from invalid config values (#19460) 2024-04-10 18:10:30 -07:00
cache add codespell action (#18818) 2024-01-17 23:03:17 -08:00
callhome Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
compress Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
dns cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08:00
drive allow protection from invalid config values (#19460) 2024-04-10 18:10:30 -07:00
etcd Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
heal allow protection from invalid config values (#19460) 2024-04-10 18:10:30 -07:00
identity fix: LDAP init. issue when LDAP server is down (#19619) 2024-04-25 14:28:16 -07:00
ilm allow protection from invalid config values (#19460) 2024-04-10 18:10:30 -07:00
lambda logging: Add subsystem to log API (#19002) 2024-04-04 05:04:40 -07:00
notify logging: Add subsystem to log API (#19002) 2024-04-04 05:04:40 -07:00
policy Fix policy package import name (#18031) 2023-09-14 14:50:16 -07:00
scanner allow protection from invalid config values (#19460) 2024-04-10 18:10:30 -07:00
storageclass logging: Add subsystem to log API (#19002) 2024-04-04 05:04:40 -07:00
subnet Pass SUBNET URL to console (#18503) 2023-11-24 09:59:35 -08:00
bool-flag_test.go rename all remaining packages to internal/ (#12418) 2021-06-01 14:59:40 -07:00
bool-flag.go heal: Enable periodic bitrot scan configuration (#14464) 2022-04-07 08:10:40 -07:00
certs_test.go Remove deprecated io/ioutil (#15707) 2022-09-19 11:05:16 -07:00
certs.go Update to minio/pkg/v2 (#17967) 2023-09-04 12:57:37 -07:00
certsinfo.go add gocritic/ruleguard checks back again, cleanup code. (#13665) 2021-11-16 09:28:29 -08:00
config_test.go fix: cleanup config KV parsing using madmin helpers (#15552) 2022-08-18 15:55:17 -07:00
config.go Improve expiration of tiered objects (#18926) 2024-03-01 21:11:03 -08:00
constants.go Support to store browser config settings (#18631) 2024-01-01 08:36:33 -08:00
crypto_test.go kms: add support for MinKMS and remove some unused/broken code (#19368) 2024-05-07 16:55:37 -07:00
crypto.go kms: add support for MinKMS and remove some unused/broken code (#19368) 2024-05-07 16:55:37 -07:00
errors-utils.go cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08:00
errors.go add deprecated expiry_workers to be ignored (#19289) 2024-03-18 15:25:32 -07:00
help.go Redact all secrets from config viewing APIs (#17380) 2023-06-23 07:45:27 -07:00
legacy.go Do not save credentials in config.json (#16275) 2022-12-19 12:27:06 -08:00
server.go extend server config.yaml to support per pool set drive count (#19663) 2024-05-03 08:54:03 -07:00