blumeops/docs/how-to/zot
Erich Blume 04e036c603 Fold enforce-tag-immutability into harden-zot-registry (#235)
## Summary

- Removed `status: active` from `enforce-tag-immutability` card — its requirements are folded into the parent `harden-zot-registry` goal's `accessControl` configuration
- Updated `harden-zot-registry` with three-tier access control spec (anonymous read, artifact-workloads read+create, admins full)
- Added `artifact-workloads` group creation step to `register-zot-oidc-client`
- Added service account context to `wire-ci-registry-auth`

## Rationale

Tag immutability requires authentication to be meaningful. Without auth, everyone is anonymous and gets the same policy. Rather than client-side push checks, the registry enforces immutability server-side: CI gets `["read", "create"]` (no update/delete), so pushing an existing tag is rejected by zot itself.

## Test plan

- [ ] `mise run docs-check-links` passes
- [ ] `mise run docs-mikado` shows enforce-tag-immutability as resolved

Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/235
2026-02-21 08:05:16 -08:00
..
add-container-version-sync-check.md Harden zot registry, pt 1 (#231) 2026-02-20 22:50:01 -08:00
add-dagger-nix-build.md Harden zot registry, pt 1 (#231) 2026-02-20 22:50:01 -08:00
adopt-commit-based-container-tags.md Complete adopt-commit-based-container-tags Mikado card 2026-02-20 23:28:45 -08:00
enforce-tag-immutability.md Fold enforce-tag-immutability into harden-zot-registry (#235) 2026-02-21 08:05:16 -08:00
fix-ntfy-nix-version.md Harden zot registry, pt 1 (#231) 2026-02-20 22:50:01 -08:00
harden-zot-registry.md Fold enforce-tag-immutability into harden-zot-registry (#235) 2026-02-21 08:05:16 -08:00
install-dagger-on-nix-runner.md Update install-dagger-on-nix-runner card with actual resolution 2026-02-20 23:23:06 -08:00
pin-container-versions.md Harden zot registry, pt 1 (#231) 2026-02-20 22:50:01 -08:00
register-zot-oidc-client.md Fold enforce-tag-immutability into harden-zot-registry (#235) 2026-02-21 08:05:16 -08:00
wire-ci-registry-auth.md Fold enforce-tag-immutability into harden-zot-registry (#235) 2026-02-21 08:05:16 -08:00