minio/internal/config
Aditya Manthramurthy ae46ce9937
ldap: Normalize DNs when importing (#19528)
This is a change to IAM export/import functionality. For LDAP enabled
setups, it performs additional validations:

- for policy mappings on LDAP users and groups, it ensures that the
corresponding user or group DN exists and if so uses a normalized form
of these DNs for storage

- for access keys (service accounts), it updates (i.e. validates
existence and normalizes) the internally stored parent user DN and group
DNs.

This allows for a migration path for setups in which LDAP mappings have
been stored in previous versions of the server, where the name of the
mapping file stored on drives is not in a normalized form.

An administrator needs to execute:

`mc admin iam export ALIAS`

followed by

`mc admin iam import ALIAS /path/to/export/file`

The validations are more strict and returns errors when multiple
mappings are found for the same user/group DN. This is to ensure the
mappings stored by the server are unambiguous and to reduce the
potential for confusion.

Bonus **bug fix**: IAM export of access keys (service accounts) did not
export key name, description and expiration. This is fixed in this
change too.
2024-04-18 08:15:02 -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 ldap: Normalize DNs when importing (#19528) 2024-04-18 08:15:02 -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 Remove deprecated io/ioutil (#15707) 2022-09-19 11:05:16 -07:00
crypto.go cleanup ignored static analysis (#16767) 2023-03-06 08:56:10 -08: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 yml-config: Add support of rootUser and rootPassword (#18615) 2023-12-08 12:04:54 -08:00