First SOC 2 program
A credible starting point
Use one change ticket linked to the pull request and deployment run; require the engineer to complete a short risk, test, and rollback checklist before merge.
Change Management
Each production-impacting change has a ticket-of-record with business/security rationale, affected systems, approver, test evidence, deployment evidence, and rollback plan.
Use this guide to put the control into operation, decide what records to retain, and check that an auditor can trace the evidence back to the work your team performed.
Maintained by GreenHat Security ยท Reviewed August 21, 2026
Every production-impacting change can be traced from its business or security reason through review, testing, deployment, validation, and rollback planning.
First SOC 2 program
Use one change ticket linked to the pull request and deployment run; require the engineer to complete a short risk, test, and rollback checklist before merge.
As the company scales
Integrate ticketing, source control, and deployment identifiers, then report on changes missing approvals, tests, validation, or emergency-change follow-up.
Specify the required rationale, affected service, risk, approver, test result, deployment reference, and rollback method for each production-impacting change.
You should end up with: Approved change-record fields and completion checklist
Require tickets, pull requests, commits, build runs, and deployment runs to reference one another with stable identifiers.
You should end up with: End-to-end trace for a representative change
Record who or what deployed the change, when it reached production, and the result of the post-deployment check.
You should end up with: Timestamped deployment and validation record
Compare production deployment logs with completed change tickets and investigate unmatched or incomplete records.
You should end up with: Periodic deployment-to-ticket reconciliation
Build the evidence set in three layers: what defines the control, who approved or reviewed it, and what proves it operated. Collect operating records when the work happens so they remain dated, attributable, correctly scoped, and traceable to the underlying activity.
Before sharing, remove unrelated personal or customer data, never expose passwords, tokens, or secret values, preserve enough source context to authenticate the record, and use the secure exchange approved for the engagement.
Documents that define the control, its scope, ownership, and expected way of working.
Confirm what the record proves
The team identified specific reversal steps, decision triggers, ownership, and validation before deployment.
Include this context
Change ID
Include this context
Rollback trigger
Include this context
Prior version or recovery action
Include this context
Responsible role
Include this context
Validation step
Include this context
Estimated decision point
Weak evidence to avoid
A plan that says 'revert if needed' without a version, trigger, owner, or verification step.
Dated proof that the control actually ran, such as tickets, logs, settings, exports, reports, and test results.
Confirm what the record proves
The reason, affected production scope, risk decision, owner, approvals, and planned execution were recorded before the change closed.
Include this context
Ticket ID
Include this context
Affected service
Include this context
Business or security rationale
Include this context
Risk rating
Include this context
Approver and approval time
Include this context
Implementation result
Weak evidence to avoid
A ticket titled 'deploy update' with no affected service, approval history, test link, or deployment result.
Confirm what the record proves
The production revision received review and links the proposed code or configuration to its change record.
Include this context
Pull-request ID
Include this context
Repository
Include this context
Author
Include this context
Reviewed commit
Include this context
Approval event
Include this context
Linked ticket
Weak evidence to avoid
A merged pull-request screenshot that omits the commit, reviewer, timestamps, and linked change.
Confirm what the record proves
The exact source revisions included in the production change are identifiable and attributable.
Include this context
Commit hash
Include this context
Repository
Include this context
Author
Include this context
Commit time
Include this context
Parent or branch
Include this context
Release reference
Weak evidence to avoid
A pasted commit message without a repository, full hash, author, or deployed-release link.
Confirm what the record proves
The approved revision passed through an identifiable build and release workflow.
Include this context
Pipeline ID
Include this context
Source revision
Include this context
Triggering actor
Include this context
Start and completion time
Include this context
Environment
Include this context
Result
Weak evidence to avoid
A green status icon with no run ID, revision, environment, or execution history.
Confirm what the record proves
The change reached the intended production environment through an attributable deployment event with a recorded outcome.
Include this context
Deployment ID
Include this context
Environment
Include this context
Artifact or revision
Include this context
Deploying identity
Include this context
Timestamp
Include this context
Outcome
Weak evidence to avoid
A console screenshot saying deployment succeeded without the artifact, actor, environment, or time.
Type 1
Retain the current change-record requirements and one recent production deployment traced through ticket, reviewed revision, tests, deployment, validation, and rollback planning as of the selected date.
Type 2
Export every production deployment attempt during the period, including successful, failed, rolled-back, manual, and emergency activity, then attach its pull request, change ticket, approval, test results, and validation outcome.
Start with the production deployment export and cloud change events; reconcile every row to a pull request and ticket, then account for direct, emergency, failed, and rollback paths explicitly.
Use this checklist to prepare for procedures an auditor may perform. The exact steps and sample selection depend on your engagement scope and the service auditor's professional judgment.
Determine whether the control is designed to achieve this result: Every production-impacting change can be traced from its business or security reason through review, testing, deployment, validation, and rollback planning.
Compare the documented owner with the intended role (Head of Engineering / Platform Owner), then compare dated records with the stated cadence: Per change.
Start with the production deployment export and cloud change events; reconcile every row to a pull request and ticket, then account for direct, emergency, failed, and rollback paths explicitly.
Retain the current change-record requirements and one recent production deployment traced through ticket, reviewed revision, tests, deployment, validation, and rollback planning as of the selected date.
Export every production deployment attempt during the period, including successful, failed, rolled-back, manual, and emergency activity, then attach its pull request, change ticket, approval, test results, and validation outcome.
Documents that define the control, its scope, ownership, and expected way of working.
For each selected record, confirm it demonstrates The team identified specific reversal steps, decision triggers, ownership, and validation before deployment.
Dated proof that the control actually ran, such as tickets, logs, settings, exports, reports, and test results.
For each selected record, confirm it demonstrates The reason, affected production scope, risk decision, owner, approvals, and planned execution were recorded before the change closed.
For each selected record, confirm it demonstrates The production revision received review and links the proposed code or configuration to its change record.
For each selected record, confirm it demonstrates The exact source revisions included in the production change are identifiable and attributable.
For each selected record, confirm it demonstrates The approved revision passed through an identifiable build and release workflow.
For each selected record, confirm it demonstrates The change reached the intended production environment through an attributable deployment event with a recorded outcome.
Use the categories that apply to this control: connect any policy or design artifact to its approval or review record, then trace a selected operating record through execution, result, and any exception or remediation.
These identifiers help you navigate related Trust Services Criteria. They do not reproduce the criteria or prove that this control fully addresses them in your environment.
Confirm final scope, mappings, and testing expectations with your service auditor. SOC 2ยฎ is an AICPA trademark; GreenHat Security is not affiliated with or endorsed by AICPA.