SigV4 implementation per AWS reference: canonical request -> string-to-sign -> HMAC-derived signing key (kSecret -> kDate -> kRegion -> kService -> kSigning) -> HMAC-SHA256 signature. Includes session token (STS) support. SecretsManagerClient wraps PutSecretValue, GetSecretValue, UpdateSecretVersionStage with custom endpoint support (LocalStack). AWS API errors surface as AwsApiError carrying HTTP status + AWS __type. AwsSecretsRotator implements 4-step contract: - generate: PutSecretValue with AWSPENDING stage, captures version_id - apply: no-op (PutSecretValue already exposed it) - verify: GetSecretValue by version_id, byte-equal SecretString check - commit: UpdateSecretVersionStage move AWSCURRENT to new + remove from old - rollback_apply: UpdateSecretVersionStage remove AWSPENDING from new version 13 unit specs verify SigV4 idempotence + format, client methods (with WebMock), rotator's full 4-step path, verify-mismatch, rollback_apply, and can_rotate? gating. |
||
|---|---|---|
| .. | ||
| .github/workflows | ||
| spec | ||
| src | ||
| .editorconfig | ||
| .gitignore | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| shard.lock | ||
| shard.yml | ||
README.md
Credential Rotation Enforcer (cre)
A Crystal-based daemon that tracks and enforces credential rotation
policies across AWS Secrets Manager, HashiCorp Vault, GitHub fine-grained
PATs, and local .env files.
Full README, asciinema demos, and walkthrough live in
learn/. This README will be expanded in Phase 16 of the build.