secure-design-reviewer
The control-side reviewer that complements threat-model-helper. Where the threat model identifies what could go wrong, this skill identifies whether the architecture has the controls to prevent or detect it.
When to use
- Architecture-review milestone (pre-CAB, pre-prod, retrospectively at audit prep).
- Retrofit: a legacy service's design doc has gone stale; validate against current standards.
- Companion review after
threat-model-helper: do threats identified there have control coverage in the design?
When NOT to use
- Code-level review → CodeQL.
- Workflow security →
actions-workflow-hardener.
- AI-specific data-flow analysis →
ai-tooling-data-flow-reviewer.
- Generic threat modeling →
threat-model-helper.
Control categories
The skill checks each design doc against 7 categories. Each category has a checklist; missing items become findings.
1. Data classification + handling
- Is the data classified (public / internal / regulated / PII / PCI)?
- Are flows of regulated data documented (storage, transmission, processing)?
- Does the doc identify where data crosses trust boundaries?
- Is there a retention schedule per data class?
- Are exclusion patterns documented for AI tool context (Copilot content exclusions, etc.)?
2. Key management
- Are encryption keys identified (data-at-rest, data-in-transit, app-layer)?
- Is the KMS / HSM identified?
- Is key rotation schedule documented?
- Are emergency rotation procedures documented?
3. IAM (authentication + authorization)
- How does the service authenticate users? Workforce vs customer identities?
- Is SAML / OIDC the auth path?
- Is the authz model declared (RBAC / ABAC / per-resource)?
- Is least-privilege documented?
- Service-to-service auth (mTLS / OIDC / API keys)?
4. Logging + monitoring
- What's logged (user actions, system events, errors)?
- Are logs streamed to the SIEM?
- Is log retention documented (typically 90d hot, 1y warm, 7y cold for SOX)?
- Are logs free of secrets / PII (or masked)?
- Are anomaly alerts defined?
5. Disaster recovery
- RTO / RPO declared?
- Backup strategy documented?
- Failover tested in the design?
- Data sovereignty / cross-region replication considered?
6. Third-party integrations
- Each external dependency listed with vendor + TPRM file reference?
- Data flow to each third party explicit?
- Fallback if third party is unavailable?
- For AI tools specifically: per [[data-handling]] + [[data-residency-regions]] facts, is the org's tenant config understood?
7. AI tool exposure
- Does the service's data feed Copilot / any LLM context?
- Are content-exclusion patterns set for service-specific paths?
- Per [[security-prompt-injection-context]] objection — is content from this service prompt-injection-safe?
- Per [[skeptical-dev-data-leakage]] — is the service's data classification consistent with its AI tool exposure?
Workflow
- Read the design doc.
- Per category: walk the checklist; identify covered + missing items.
- Cross-reference threat model (if one exists for the service): for each threat identified, confirm the design has a mitigation control.
- Produce findings: each missing or weak control becomes a finding with
current_state, expected_state, severity, remediation, control-catalog reference.
- Summary: counts per category, total findings, top-5 priority by severity — presented in chat.
- Persist the review — after presenting findings, write the full review note via
vault-writer.write_research to vault/research/appsec/YYYY-MM-DD-design-review-{service-slug}.md (frontmatter per research.yml, topic: appsec) so retrofit passes and audit prep can query it.
Output structure
# Secure Design Review — {service name}
## Summary
- Total findings: {N}
- Critical: X | High: Y | Medium: Z | Low: W
## Top-5 priority remediations
1. ...
## Findings by category
### 1. Data classification + handling — {pass | gaps}
{findings}
### 2. Key management — ...
{...}
## Cross-reference: threat model
{If threat model exists, list each threat + whether design covers it}
## Sources
{vault notes, frameworks}
Lands at vault/research/appsec/YYYY-MM-DD-design-review-{service-slug}.md (workflow step 6).
Composes with
Acceptance test (for step 24 done-criteria)
One design review exercised against the same hypothetical service used for threat-model-helper's acceptance. Confirm 7 categories covered, findings list with severity, cross-reference to threat model (if produced).
1---2name: secure-design-reviewer3description: Critique a service / architecture design doc against the org's control objectives — data classification handling, key management, IAM (auth + authz), logging + monitoring, disaster recovery, third-party integrations, AI tool exposure. Produces a structured finding list per control category with `current_state` vs `expected_state`, severity, and remediation. Composes with threat-model-helper (threats identified there → controls validated here) and ai-tooling-data-flow-reviewer for the AI-specific data-flow dimension. Use during architecture review, before change-advisory-board approval, or when retrofitting a legacy service's design documentation.4---56# secure-design-reviewer78The control-side reviewer that complements [`threat-model-helper`](../threat-model-helper/SKILL.md). Where the threat model identifies what could go wrong, this skill identifies whether the architecture has the controls to prevent or detect it.910## When to use1112- Architecture-review milestone (pre-CAB, pre-prod, retrospectively at audit prep).13- Retrofit: a legacy service's design doc has gone stale; validate against current standards.14- Companion review after `threat-model-helper`: do threats identified there have control coverage in the design?1516## When NOT to use1718- Code-level review → CodeQL.19- Workflow security → `actions-workflow-hardener`.20- AI-specific data-flow analysis → [`ai-tooling-data-flow-reviewer`](../ai-tooling-data-flow-reviewer/SKILL.md).21- Generic threat modeling → `threat-model-helper`.2223## Control categories2425The skill checks each design doc against 7 categories. Each category has a checklist; missing items become findings.2627### 1. Data classification + handling2829- Is the data classified (public / internal / regulated / PII / PCI)?30- Are flows of regulated data documented (storage, transmission, processing)?31- Does the doc identify where data crosses trust boundaries?32- Is there a retention schedule per data class?33- Are exclusion patterns documented for AI tool context (Copilot content exclusions, etc.)?3435### 2. Key management3637- Are encryption keys identified (data-at-rest, data-in-transit, app-layer)?38- Is the KMS / HSM identified?39- Is key rotation schedule documented?40- Are emergency rotation procedures documented?4142### 3. IAM (authentication + authorization)4344- How does the service authenticate users? Workforce vs customer identities?45- Is SAML / OIDC the auth path?46- Is the authz model declared (RBAC / ABAC / per-resource)?47- Is least-privilege documented?48- Service-to-service auth (mTLS / OIDC / API keys)?4950### 4. Logging + monitoring5152- What's logged (user actions, system events, errors)?53- Are logs streamed to the SIEM?54- Is log retention documented (typically 90d hot, 1y warm, 7y cold for SOX)?55- Are logs free of secrets / PII (or masked)?56- Are anomaly alerts defined?5758### 5. Disaster recovery5960- RTO / RPO declared?61- Backup strategy documented?62- Failover tested in the design?63- Data sovereignty / cross-region replication considered?6465### 6. Third-party integrations6667- Each external dependency listed with vendor + TPRM file reference?68- Data flow to each third party explicit?69- Fallback if third party is unavailable?70- For AI tools specifically: per [[data-handling]] + [[data-residency-regions]] facts, is the org's tenant config understood?7172### 7. AI tool exposure7374- Does the service's data feed Copilot / any LLM context?75- Are content-exclusion patterns set for service-specific paths?76- Per [[security-prompt-injection-context]] objection — is content from this service prompt-injection-safe?77- Per [[skeptical-dev-data-leakage]] — is the service's data classification consistent with its AI tool exposure?7879## Workflow80811. **Read the design doc**.822. **Per category**: walk the checklist; identify covered + missing items.833. **Cross-reference threat model** (if one exists for the service): for each threat identified, confirm the design has a mitigation control.844. **Produce findings**: each missing or weak control becomes a finding with `current_state`, `expected_state`, severity, remediation, control-catalog reference.855. **Summary**: counts per category, total findings, top-5 priority by severity — presented in chat.866. **Persist the review** — after presenting findings, write the full review note via `vault-writer.write_research` to `vault/research/appsec/YYYY-MM-DD-design-review-{service-slug}.md` (frontmatter per `research.yml`, `topic: appsec`) so retrofit passes and audit prep can query it.8788## Output structure8990```markdown91# Secure Design Review — {service name}9293## Summary94- Total findings: {N}95- Critical: X | High: Y | Medium: Z | Low: W9697## Top-5 priority remediations981. ...99100## Findings by category101### 1. Data classification + handling — {pass | gaps}102{findings}103### 2. Key management — ...104{...}105106## Cross-reference: threat model107{If threat model exists, list each threat + whether design covers it}108109## Sources110{vault notes, frameworks}111```112113Lands at `vault/research/appsec/YYYY-MM-DD-design-review-{service-slug}.md` (workflow step 6).114115## Composes with116117- [`threat-model-helper`](../threat-model-helper/SKILL.md) — natural pair.118- `vault-querier` — facts about Copilot data handling and similar AI-tool facts.119- [`ai-tooling-data-flow-reviewer`](../ai-tooling-data-flow-reviewer/SKILL.md) — the AI dimension.120- `vault-writer.write_research` — persists the review note (workflow step 6).121122## Acceptance test (for step 24 done-criteria)123124One design review exercised against the same hypothetical service used for `threat-model-helper`'s acceptance. Confirm 7 categories covered, findings list with severity, cross-reference to threat model (if produced).