refactor(admin): move kms key route registration (#1799)

This commit is contained in:
安正超
2026-02-13 19:18:15 +08:00
committed by GitHub
parent 53d601e6ec
commit 986a259a9b
3 changed files with 38 additions and 740 deletions
+1 -35
View File
@@ -113,7 +113,7 @@ fn extract_query_params(uri: &hyper::Uri) -> HashMap<String, String> {
pub fn register_kms_route(r: &mut S3Router<AdminOperation>) -> std::io::Result<()> {
register_kms_management_route(r)?;
kms_dynamic::register_kms_dynamic_route(r)?;
register_kms_key_route(r)?;
kms_keys::register_kms_key_route(r)?;
Ok(())
}
@@ -164,40 +164,6 @@ fn register_kms_management_route(r: &mut S3Router<AdminOperation>) -> std::io::R
Ok(())
}
fn register_kms_key_route(r: &mut S3Router<AdminOperation>) -> std::io::Result<()> {
r.insert(
Method::POST,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys").as_str(),
AdminOperation(&kms_keys::CreateKmsKeyHandler {}),
)?;
r.insert(
Method::DELETE,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/delete").as_str(),
AdminOperation(&kms_keys::DeleteKmsKeyHandler {}),
)?;
r.insert(
Method::POST,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/cancel-deletion").as_str(),
AdminOperation(&kms_keys::CancelKmsKeyDeletionHandler {}),
)?;
r.insert(
Method::GET,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys").as_str(),
AdminOperation(&kms_keys::ListKmsKeysHandler {}),
)?;
r.insert(
Method::GET,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/{key_id}").as_str(),
AdminOperation(&kms_keys::DescribeKmsKeyHandler {}),
)?;
Ok(())
}
/// Create a new KMS master key
pub struct CreateKeyHandler {}
+37 -3
View File
@@ -15,10 +15,10 @@
//! KMS key management admin API handlers
use crate::admin::auth::validate_admin_request;
use crate::admin::router::Operation;
use crate::admin::router::{AdminOperation, Operation, S3Router};
use crate::auth::{check_key_valid, get_session_token};
use crate::server::RemoteAddr;
use hyper::{HeaderMap, StatusCode};
use crate::server::{ADMIN_PREFIX, RemoteAddr};
use hyper::{HeaderMap, Method, StatusCode};
use matchit::Params;
use rustfs_config::MAX_ADMIN_REQUEST_BODY_SIZE;
use rustfs_kms::{KmsError, get_global_kms_service_manager, types::*};
@@ -61,6 +61,40 @@ fn extract_query_params(uri: &hyper::Uri) -> HashMap<String, String> {
params
}
pub fn register_kms_key_route(r: &mut S3Router<AdminOperation>) -> std::io::Result<()> {
r.insert(
Method::POST,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys").as_str(),
AdminOperation(&CreateKmsKeyHandler {}),
)?;
r.insert(
Method::DELETE,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/delete").as_str(),
AdminOperation(&DeleteKmsKeyHandler {}),
)?;
r.insert(
Method::POST,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/cancel-deletion").as_str(),
AdminOperation(&CancelKmsKeyDeletionHandler {}),
)?;
r.insert(
Method::GET,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys").as_str(),
AdminOperation(&ListKmsKeysHandler {}),
)?;
r.insert(
Method::GET,
format!("{}{}", ADMIN_PREFIX, "/v3/kms/keys/{key_id}").as_str(),
AdminOperation(&DescribeKmsKeyHandler {}),
)?;
Ok(())
}
/// Create a new KMS key
pub struct CreateKmsKeyHandler;