diff --git a/rustfs/src/admin/handlers/policies.rs b/rustfs/src/admin/handlers/policies.rs index fdc57baa6..533d5f626 100644 --- a/rustfs/src/admin/handlers/policies.rs +++ b/rustfs/src/admin/handlers/policies.rs @@ -320,7 +320,7 @@ impl Operation for InfoCannedPolicy { error = ?e, "admin policy state" ); - S3Error::with_message(S3ErrorCode::InternalError, e.to_string()) + iam_error_to_s3_error(e) })?; let body = serde_json::to_vec(&pd).map_err(|e| s3_error!(InternalError, "failed to serialize response: {:?}", e))?; diff --git a/rustfs/src/admin/handlers/user.rs b/rustfs/src/admin/handlers/user.rs index fb715cb1c..88a6d4d50 100644 --- a/rustfs/src/admin/handlers/user.rs +++ b/rustfs/src/admin/handlers/user.rs @@ -510,9 +510,7 @@ impl Operation for RemoveUser { return Err(s3_error!(InternalError, "iam is not initialized")); }; - let (is_temp, _) = iam_store.is_temp_user(ak).await.map_err(|e| { - S3Error::with_message(S3ErrorCode::InternalError, format!("failed to query temporary user state: {e}")) - })?; + let (is_temp, _) = iam_store.is_temp_user(ak).await.map_err(iam_error_to_s3_error)?; if is_temp { return Err(s3_error!(InvalidArgument, "cannot remove a temporary user"));