IAM & Access Control Enhancements
Reference: security-groups/group-6-iam-access-control.md
Tasks
- Split single service account into per-function SAs (API, Console, Migration) with least-privilege permissions
- Migrate from HMAC keys to Workload Identity — eliminate shared secrets
- Conditional IAM bindings — resource-scoping conditions for fine-grained access
- Kubernetes RBAC enhancement — namespace-specific roles with restricted secret access
- Data residency controls — organization policies and location-based IAM conditions
Important Notes — Time-Based IAM Conditions
⚠️ Time-based IAM conditions (business-hours restrictions) will break automated deployments. Before applying:
- The API service account runs 24/7 — do NOT apply time restrictions
- Migration service accounts are triggered by CI/CD — time windows at IAM level will cause failures
- If time-limiting is desired, control timing at the CI/CD pipeline level, not IAM
- Use resource-scoping conditions instead of time conditions for automated service accounts
- Cross-project bindings should not have time restrictions since the API service runs continuously
Acceptance Criteria
IAM & Access Control Enhancements
Reference:
security-groups/group-6-iam-access-control.mdTasks
Important Notes — Time-Based IAM Conditions
Acceptance Criteria