Documentation
¶
Overview ¶
Package soc2 is the SOC 2 framework skeleton: a Framework implementation, the control catalog, and the seed policies that demonstrate every L0–L9 seam works end-to-end. The full ~300-policy catalog is post-M6 work; M6 ships 3 representative policies — one automated, one manual, one cross-source.
See docs/architecture/09-implementation-roadmap.md §What's in v1-alpha.
Index ¶
Constants ¶
const FrameworkID = "soc2"
FrameworkID is the registered identifier.
const FrameworkVersion = "soc2-2017@0.1.0"
FrameworkVersion stamps every PolicyRef returned by this framework.
const PolicyAccessReview = "soc2.cc6.3.access_review_quarterly"
PolicyAccessReview is the manual policy demonstrating manual.pdf → signed_document consumption.
const PolicyMFAEnforced = "soc2.cc6.1.mfa_enforced"
PolicyMFAEnforced is the automated policy demonstrating aws.iam → user_record consumption.
const PolicyMFAUnion = "soc2.cc6.1.mfa_enforced_all_sources"
PolicyMFAUnion is the cross-source policy demonstrating slot union: the user_directory slot binds multiple sources (in M6's fixture, only aws.iam is registered, but the slot's cardinality is `one-or-more` so a second source can be added without policy change).
Variables ¶
This section is empty.
Functions ¶
func Controls ¶
Controls returns the SOC 2 control catalog used by the M6 walking skeleton. Only the controls referenced by the three seed policies are listed today; the full TSC 2017 catalog is post-M6 work.
func ManualCatalog ¶
func ManualCatalog() map[string]manual.CatalogEntry
ManualCatalog returns the catalog entries the manual.pdf plugin needs to resolve manual-evidence paths. M6 ships one entry; full catalog YAML loading is post-M6.
func Policies ¶
Policies returns the seed policies. Authoring them as Go values (rather than embedded YAML) keeps the walking skeleton legible; the L0 YAML loader is exercised in internal/spec's own tests.