diff --git a/rustfs/src/admin/handlers/kms_keys.rs b/rustfs/src/admin/handlers/kms_keys.rs index aa154ee6b..25bb7b1dc 100644 --- a/rustfs/src/admin/handlers/kms_keys.rs +++ b/rustfs/src/admin/handlers/kms_keys.rs @@ -320,6 +320,17 @@ mod tests { assert_eq!(extract_key_id(&uri).as_deref(), Some("legacy-key")); } + #[test] + fn test_extract_key_id_skips_empty_aliases() { + for (uri, expected) in [ + ("/rustfs/admin/v3/kms/key/status?keyId=&key-id=minio-key", Some("minio-key")), + ("/rustfs/admin/v3/kms/key/status?keyId=&key-id=&key=fallback-key", Some("fallback-key")), + ("/rustfs/admin/v3/kms/key/status?keyId=&key-id=&key=", None), + ] { + let uri: Uri = uri.parse().expect("uri should parse"); + assert_eq!(extract_key_id(&uri).as_deref(), expected); + } + } } /// List KMS keys (legacy endpoint)