From 65de487eba3c9e2d57c2541087060fe08c30dc9a Mon Sep 17 00:00:00 2001 From: yxrxy Date: Fri, 23 Jan 2026 15:11:01 +0800 Subject: [PATCH] fix: resolve Issue #1465 - IAM credential change crash (#1535) Co-authored-by: heihutu <30542132+heihutu@users.noreply.github.com> Co-authored-by: houseme Co-authored-by: loverustfs --- crates/iam/src/store/object.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/crates/iam/src/store/object.rs b/crates/iam/src/store/object.rs index bc50d5ea1..2cadfd71f 100644 --- a/crates/iam/src/store/object.rs +++ b/crates/iam/src/store/object.rs @@ -130,8 +130,14 @@ impl ObjectStore { } fn decrypt_data(data: &[u8]) -> Result> { - let de = rustfs_crypto::decrypt_data(get_global_action_cred().unwrap_or_default().secret_key.as_bytes(), data)?; - Ok(de) + let cred = get_global_action_cred().unwrap_or_default(); + match rustfs_crypto::decrypt_data(cred.secret_key.as_bytes(), data) { + Ok(decrypted) => Ok(decrypted), + Err(_) => { + warn!("Failed to decrypt IAM config data, treating as unencrypted"); + Ok(data.to_vec()) + } + } } fn encrypt_data(data: &[u8]) -> Result> {