diff --git a/rustfs/src/admin/handlers/group.rs b/rustfs/src/admin/handlers/group.rs
index 93e440fbb..5c8d220b9 100644
--- a/rustfs/src/admin/handlers/group.rs
+++ b/rustfs/src/admin/handlers/group.rs
@@ -16,13 +16,13 @@ use super::iam_error::iam_error_to_s3_error;
use crate::{
admin::runtime_sources::current_action_credentials,
admin::{
- auth::validate_admin_request,
+ auth::authorize_admin_request,
handlers::site_replication::site_replication_iam_change_hook,
router::{AdminOperation, Operation, S3Router},
utils::has_space_be,
},
- auth::{check_key_valid, constant_time_eq, get_session_token},
- server::{ADMIN_PREFIX, RemoteAddr},
+ auth::constant_time_eq,
+ server::ADMIN_PREFIX,
};
use http::{HeaderMap, StatusCode};
use hyper::Method;
@@ -98,22 +98,11 @@ impl Operation for ListGroups {
"admin group state"
);
- let Some(input_cred) = req.credentials else {
+ if req.credentials.is_none() {
return Err(s3_error!(InvalidRequest, "authentication required"));
- };
+ }
- let (cred, owner) =
- check_key_valid(get_session_token(&req.uri, &req.headers).unwrap_or_default(), &input_cred.access_key).await?;
-
- validate_admin_request(
- &req.headers,
- &cred,
- owner,
- false,
- vec![Action::AdminAction(AdminAction::ListGroupsAdminAction)],
- req.extensions.get::