mcli 20261112:严格策略校验与访问密钥内联策略重置
mcli 20261112 升级至 silo-pkg 3.16.1 与 Go 1.27.4,对齐各访问密钥编辑命令的显式空策略重置行为,并刷新基础依赖。
mcli 20261112 已正式发布。 标签:RELEASE.2026-11-12T00-00-00Z;软件包版本:20261112000000.0.0;源码提交:a37a9f054fba。本说明记录自 mcli 20261109 以来的变更。
这是独立的 mcli 维护版本。Console 2.7.1 已直接采用该正式提交(v0.0.0-20261111180825-a37a9f054fba);已发布的 SILO Server 20261109 在下一版 Server 正式发布前仍保留内置 mcli 20261109。正式支持目标为 PGSTY SILO,对上游 MinIO 及其他 S3 兼容服务保持尽最大努力兼容。
策略校验与内联策略重置
- 显式空内联策略重置(pgsty/mc#78):
admin accesskey edit --policy、idp ldap accesskey edit --policy与idp openid accesskey edit --policy现均支持传入显式空策略文档({}或{"Statement":[]}),与admin user svcacct edit --policy和admin user svcacct set对齐。配合包含20261109之后服务账号策略修复(SN-2026-021)的 SILO Server 时,显式空文档会清除内联会话策略并恢复继承父账号权限,省略--policy则保留既有内联策略;单独替换客户端二进制不会改变旧版 Server 的服务端行为。 - 严格策略 JSON 校验: 升级至 silo-pkg v3.16.1,客户端侧 IAM 与桶策略解析统一拒绝未知 JSON 字段、尾部多余载荷、非对象输入、空
Principal: {}及未实现的NotPrincipal,不再静默丢弃。创建账号与写入命名策略继续拒绝空策略文档。
工具链、依赖与制品交付
- 源码构建、CI 与开发构建镜像统一要求 Go
1.27.4。 - 升级
grpc-gateway/v2至v2.33.0、google.golang.org/grpc至v1.85.0、go-humanize至v1.1.0、klauspost/compress至v1.20.4、xo/terminfo至v1.2.1、GoReleaser 至v2.20.1,刷新固定基础容器镜像摘要,并保留经验证的minio-go/v7(320af050c445)、gjson、go-systemd v22.6.0、终端宽度与tablewriter选型。 - GitHub Release 包含 19 个不可变制品(Windows ZIP、Linux/macOS tar.gz、经维护者 GPG 签名的
x86_64与aarch64RPM、DEB/APK 软件包、SHA-256 校验和及 Sigstore 构建证明),同时发布多架构容器镜像docker.io/pgsty/mc:RELEASE.2026-11-12T00-00-00Z与docker.io/pgsty/mc:latest(sha256:b532278b7a3747dbab6fe45eebb40a653efa704e6758e24e9d9ec54fc96c1800)。
验证
流水线记录:Go CI、Crosscompile、VulnCheck、Test Release Pipeline、Release 与 Docker Hub 发布。
GitHub Release · 兼容性注记 · 相对 20261109 的变更 · 下载