Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ A S3-compatible command-line client written in Rust.
## Features

- 🚀 **High Performance** - Written in Rust with async concurrent operations
- 🔧 **S3 Compatible** - Supports RustFS, MinIO, AWS S3, and other S3-compatible services
- 🔧 **S3 Compatible** - Data operations support RustFS, MinIO, AWS S3, and other S3-compatible services
- 📦 **Cross-Platform** - Supports Linux, macOS, and Windows
- 🎨 **Friendly Output** - Human-readable and JSON format output
- 🔒 **Secure** - Secure credential storage, no sensitive data in logs
Expand Down Expand Up @@ -469,12 +469,14 @@ region = "us-east-1"

### Supported Backends

| Backend | Tier | Description |
|---------------------|-------------|---------------------|
| RustFS | Tier 1 | Fully supported |
| MinIO | Tier 2 | Fully supported |
| AWS S3 | Tier 3 | Best effort support |
| Other S3-compatible | Best Effort | No guarantee |
These tiers describe S3-compatible data operations. The `rc admin` commands use the RustFS Admin API and do not support MinIO Admin API endpoints.

| Backend | Tier | Description |
|---------------------|-------------|-----------------------------------|
| RustFS | Tier 1 | S3 and Admin APIs supported |
| MinIO | Tier 2 | S3 operations supported |
| AWS S3 | Tier 3 | Best effort S3 support |
| Other S3-compatible | Best Effort | No compatibility guarantee |

### Minimum Rust Version

Expand Down
2 changes: 1 addition & 1 deletion crates/cli/src/commands/admin/mod.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//! Admin commands for IAM and cluster management
//!
//! This module provides commands for managing users, policies, groups,
//! service accounts, and cluster operations on RustFS/MinIO-compatible servers.
//! service accounts, and cluster operations through the RustFS Admin API.

mod access_key;
mod decommission;
Expand Down
2 changes: 1 addition & 1 deletion crates/core/src/admin/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ use crate::error::Result;
///
/// This trait defines the interface for managing users, policies, groups,
/// service accounts, and cluster operations on S3-compatible storage systems
/// that support the RustFS/MinIO Admin API.
/// that support the RustFS Admin API.
#[async_trait]
pub trait AdminApi: Send + Sync {
// ==================== Cluster Operations ====================
Expand Down
4 changes: 2 additions & 2 deletions crates/s3/src/admin.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ use sha2::{Digest, Sha256};
use std::collections::HashMap;
use std::time::{Duration, SystemTime};

/// Admin API client for RustFS/MinIO-compatible servers
/// Admin API client for RustFS servers
pub struct AdminClient {
http_client: Client,
endpoint: String,
Expand Down Expand Up @@ -944,7 +944,7 @@ impl AdminApi for AdminClient {
entity_name: &str,
) -> Result<()> {
// Detach by setting empty policy
// In RustFS/MinIO, you typically set a new policy which replaces the old one
// RustFS replaces the previous policy association when a new one is set.
// For detach, we need to get current policies and remove the specified ones
let _ = (policy_names, entity_type, entity_name);
Err(Error::UnsupportedFeature(
Expand Down
6 changes: 4 additions & 2 deletions docs/reference/rc/admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

## Purpose

The `rc admin` operation manages RustFS or MinIO-compatible administrative APIs, including cluster information, healing, pools, expansion, decommissioning, rebalance workflows, IAM users, policies, groups, and service accounts.
The `rc admin` operation manages the RustFS Admin API, including cluster information, healing, pools, expansion, decommissioning, rebalance workflows, IAM users, policies, groups, and service accounts.

`rc admin` does not implement the MinIO Admin API. MinIO aliases remain available to S3 data commands, but MinIO administrative operations require a MinIO-compatible admin client.

## Syntax

Expand Down Expand Up @@ -111,7 +113,7 @@ rc admin service-account create local SA_ACCESS_KEY SA_SECRET_KEY --policy ./pol

## Behavior

Admin operations use the configured alias to create an admin client. The credentials behind the alias must have permissions for the requested administrative API. The command accepts aliases with or without a trailing slash.
Admin operations use the configured alias to create a RustFS admin client. The credentials behind the alias must have permissions for the requested administrative API. The command accepts aliases with or without a trailing slash.

`rc admin heal status <ALIAS>` reports aggregate background heal status. Manual bucket or prefix heals started with `rc admin heal start` are token-scoped tasks; the start output includes a client token, and subsequent task status or stop requests must pass that token with `--bucket`, optional `--prefix`, and `--client-token`.

Expand Down
Loading