跳转到主要内容

S3 API 兼容性

SILO 20261026 契约: 本页继承 S3 API 目录,当前目标为 20261026 正式版。普通 LIST、Object Lock和分片列表的限定与错误行为以这些记录为准。校验和消息可能改变,错误码契约见校验和说明。

本页面记录 MinIO 对象存储支持的 S3 API。 如需查看任意 API 的参考文档,请参阅 Amazon S3 的对应文档。

警告

重要

MinIO 强烈建议使用 S3 兼容 SDK 执行对象存储操作。

对象 API

写入提交错误

PR #232 包含于 Server 20261018 正式版:PUT 或分片上传完成操作在最终提交时丢失暂存的 xl.meta,返回 HTTP 503 SlowDownWrite。原代码可能对 PUT 返回 400 IncompleteBody,对分片完成返回 404 NoSuchKey。真正的客户端上传不完整仍保留原有错误处理。这项分类修复允许 SDK 重试,但不会恢复丢失的暂存数据。见源码与发布边界。

对象锁定

不支持的 API 对象端点

GetObjectAcl
PutObjectAcl

多部分上传

与 S3 API 在多部分上传方面的差异

  • 已发布的 Server 20260903:ListMultipartUploads 将非空 prefix 当成精确对象名;空 prefix 使用节点本地易失缓存,不具备完整分页、marker 和 delimiter 语义。
  • Server 20260916 以可选 strict 模式增加持久扫描,默认仍保留 legacy 精确键/缓存行为。运行该版本时仍适用其历史升级契约。
  • Server 20261018: 撤回默认持久扫描,公开列表恢复无 prefix 的节点缓存和非空 prefix 的精确对象查找;重启漏项、真正前缀筛选及缓存分页缺陷仍然存在。模式开关被忽略并告警,旧共享配置键被容忍;已有 strict 用户会失去可选持久列表和严格取消。诊断扫描保留资源限制但不控制业务入口。身份字段、安全校验、默认尽力取消和后台清理修复保留。见决策、容量与限制。
  • PutBucketLifecycle 不支持 AbortIncompleteMultipartUpload 生命周期动作。

存储桶 API

存储桶复制

存储桶生命周期

存储桶通知

存储桶策略

不支持的 API 存储桶操作

GetBucketInventoryConfiguration
PutBucketInventoryConfiguration
DeleteBucketInventoryConfiguration
GetBucketMetricsConfiguration
PutBucketMetricsConfiguration
DeleteBucketMetricsConfiguration
PutBucketWebsite
GetBucketLogging
PutBucketLogging
PutBucketAccelerateConfiguration
DeleteBucketAccelerateConfiguration
PutBucketRequestPayment
DeleteBucketRequestPayment
PutBucketAcl
HeadBucketAcl
GetPublicAccessBlock
PutPublicAccessBlock
DeletePublicAccessBlock
GetBucketOwnershipControls
PutBucketOwnershipControls
DeleteBucketOwnershipControls
GetBucketIntelligentTieringConfiguration
PutBucketIntelligentTieringConfiguration
ListBucketIntelligentTieringConfigurations
DeleteBucketIntelligentTieringConfiguration
GetBucketAnalyticsConfiguration
PutBucketAnalyticsConfiguration
ListBucketAnalyticsConfigurations
DeleteBucketAnalyticsConfiguration
CreateSession

MinIO 针对不支持的存储桶资源的替代方案

  • 对于 BucketACL 或 ObjectACL 操作调用,请使用 Policies。
  • 自 RELEASE.2026-09-03T13-18-01Z 起支持 BucketCORS 操作。设置了自身 CORS 配置的存储桶只按该配置响应;未设置的存储桶使用服务端全局的 MINIO_API_CORS_ALLOW_ORIGIN 策略,默认允许所有来源。
  • 对于 BucketWebsite 操作调用,请使用 caddy 或 nginx。
  • 对于 BucketAnalytics、BucketMetrics 或 BucketLogging 操作调用,请使用 存储桶通知。