# CASAN Local Production-Like Infra Lab This Docker Compose stack emulates the external infrastructure needed to move CASAN Tier 2 from "needs infra" to locally testable production-like controls. ## Services | Service | Local URL | Purpose | |---|---|---| | Vault dev | `http://127.0.0.1:18200` | KMS Transit signing/rotation/non-exportable keys | | Mock IdP/OIDC | `http://127.0.0.1:18081` | RS256 JWT + JWKS for approval identity | | MinIO | `http://127.0.0.1:19090` | S3-compatible WORM/Object Lock emulation | | MinIO Console | `http://127.0.0.1:19091` | Object store admin UI | | Alert webhook | `http://127.0.0.1:19092` | Slack/PagerDuty-style webhook emulator | | Billing API mock | `http://127.0.0.1:19093/usage` | Provider usage API emulator | | Dashboard via nginx | `http://127.0.0.1:18080` | Dashboard behind basic auth (`casan` / `casan`) | ## Commands ```bash bash packages/casan-harness/scripts/bash/infra-lab.sh start bash packages/casan-harness/scripts/bash/infra-lab.sh verify bash packages/casan-harness/scripts/bash/infra-lab.sh env bash packages/casan-harness/scripts/bash/infra-lab.sh stop ``` This is a lab, not a compliance claim. AWS S3 Object Lock, real enterprise IdP, CloudHSM, PagerDuty/Slack, and OpenAI/Anthropic billing APIs still need real managed services and credentials before claiming production Strong readiness.