Back to Blog
How-To 10 min read

SOC 2 Jira: Change Management and Ticket Approval Workflow

SOC 2 Jira change management guide covering change advisory board workflows, approval fields, linking commits to tickets, and exporting Jira data as CC8.1 audit evidence.

Key Takeaways
  • A Jira Change Management project with approval workflow fields satisfies CC8.1 change authorization requirements.
  • Linking Jira tickets to GitHub commits creates a traceable paper trail from business approval to code change.
  • Custom fields for Change Type, Risk Level, and Rollback Plan make tickets audit-ready without extra documentation.
  • Jira automation rules can enforce that no ticket moves to Done without an approver stamp.
  • The Jira audit log captures all workflow transitions and field changes for audit evidence.
  • Monthly exports of resolved change tickets constitute the primary CC8.1 evidence artifact.

What SOC 2 CC8.1 Requires from Change Management

CC8.1 requires that changes to infrastructure, application code, and configuration are: (1) authorized prior to implementation, (2) documented with description and purpose, (3) tested before deployment, (4) deployed in a controlled manner with rollback capability, and (5) reviewed post-deployment. Jira, as the change tracking system, provides evidence for items 1, 2, and 5. CI/CD pipeline logs provide evidence for 3 and 4.

Auditors testing CC8.1 will sample 10–20 changes from your audit period and verify that each has an approved ticket, was deployed via the pipeline (not manually), and that the pipeline run references the ticket. The combination of Jira approval evidence + pipeline run logs + Git commit messages referencing the Jira ticket creates an unbroken chain of custody for each change.

Setting Up a Change Management Project

Create a dedicated Change Management project in Jira (project key: CM or CHG). Use the Scrum or Kanban board type with a custom workflow. Alternatively, add change management issue types to your existing engineering project — use issue types: Standard Change (low-risk, pre-approved), Normal Change (requires review), Emergency Change (post-implementation review). This mirrors the ITIL change management taxonomy that many SOC 2 auditors are familiar with.

Configure project access: change tickets should be visible to all engineers (for culture of transparency) but only Security, Platform, and Engineering Management roles should have permission to transition tickets to the Approved status. Set this in Jira → Project settings → Permissions → Transition issues. This access control on the workflow transition is itself a CC6.2 control — only authorized approvers can mark a change as approved.

Change Approval Workflow Design

Design a workflow with these statuses: Proposed → Under Review → Approved → In Progress → Deployed → Done (or Rejected at any point). The transition from Under Review to Approved should require a specific approver field to be populated. In Jira Automation (project settings → Automation), create a rule: "When issue transitions to Approved, if Approver field is empty, then block transition and comment: Approver is required."

For normal changes, require at minimum one approval from the Engineering Manager or Tech Lead. For high-risk changes (database schema migrations, IAM policy changes, TLS certificate updates), require two approvals — Engineering Manager and Security Lead. Document this approval matrix in your change management policy and configure the Jira workflow to enforce it. Auditors will test that the workflow actually requires approvals, not just that the policy says it should.

Add a required field "Planned Deployment Date" to the Approved → In Progress transition. This ensures every approved change has a scheduled deployment time, enabling the post-deployment review to be scheduled in advance. Add a "Post-Deployment Review" checkbox that must be checked before closing the ticket — this enforces the post-deployment review step required by CC8.1.

Custom Fields for SOC 2 Evidence

Add these custom fields to your change management issue type: (1) Change Type — dropdown: Application Code, Infrastructure, Configuration, Security Policy, Database Schema. This categorizes changes for risk assessment and helps auditors filter evidence by type. (2) Risk Level — dropdown: Low, Medium, High, Critical. High and Critical changes require additional approvers and mandatory postmortem. (3) Rollback Plan — text field: required for Medium, High, and Critical changes. Document the specific rollback steps.

(4) Testing Evidence — URL or text field: link to the CI pipeline run, staging test results, or manual test record that confirms the change was tested before production deployment. (5) Related Incidents — link field: links this change to any security incident or customer bug it resolves, creating a traceability chain for corrective actions. (6) Affected Systems — multi-select: list of systems impacted, used for scope analysis and customer notification assessment.

Linking Tickets to Code Changes

The Jira-GitHub integration (Smart Commits or the GitHub for Jira app) automatically links commits, pull requests, and deployments to Jira issues when the issue key appears in the commit message or PR title. Convention: every PR title must start with the Jira ticket key: "CM-142: Add rate limiting to login endpoint". Configure a GitHub branch naming rule that requires the branch name to contain the Jira key: `feature/CM-142-rate-limiting`.

This linking creates bidirectional traceability: from the Jira ticket you can see every commit and PR associated with the change. From the Git log, you can trace every commit to an approved Jira ticket. During audit, when a sampled production deployment is requested, you navigate to the release pipeline run → find the merged PR → navigate to the linked Jira ticket → show the approval record. This chain takes seconds, not hours.

Enable the Jira Deployment integration to link CI/CD deployments directly to Jira tickets. With the GitHub for Jira app, configure your GitHub Actions workflow to call the Jira Deployment API when a deployment completes: this adds a "Deployed to production" event to the Jira ticket with the deployment timestamp, environment, and pipeline link. This is the most direct CC8.1 evidence artifact — the ticket shows approval (before) and deployment (after).

Automation Rule Enforcement

Jira Automation rules (available in all Jira Cloud plans) enforce workflow rules without custom code. Create these rules: (1) "Block closure without deployment link" — When issue transitions to Done, if Deployment Link field is empty, then block transition and add comment. (2) "Notify approvers on high-risk changes" — When issue is created with Risk Level = High, send email to security@company.com. (3) "Auto-assign postmortem" — When issue has Risk Level = Critical and transitions to Done, create a linked subtask "Postmortem — [issue key]" assigned to the Tech Lead.

(4) "Escalate unreviewed changes" — When issue has been in Under Review for more than 3 business days, send reminder to project lead. This prevents tickets from getting stuck in the approval queue and deployment SLAs being missed. Automation rules create an audit log of their own — each rule execution is logged in the Jira automation history, providing evidence that the enforcement mechanism was operating throughout the audit period.

Exporting Evidence for CC8.1

At the end of each audit period, export the change management evidence. Navigate to your Change Management project → Board → Backlog → Export. Filter by resolution date within the audit period and issue type = Change. The export CSV contains ticket key, summary, change type, risk level, approver, created date, resolved date, and all custom fields. This is your primary CC8.1 evidence artifact.

For sampled changes, auditors will ask to drill into individual tickets. Navigate to the specific ticket and take a screenshot showing: the ticket fields (change type, risk level, rollback plan), the approver name and approval date in the workflow history, the linked PR in the Development panel, and the deployment event in the Releases panel. This four-part screenshot package satisfies the auditor's request for a single sampled change. Prepare a template procedure for generating this package quickly during audit.

Frequently Asked Questions

Do we need a separate Jira project for change management or can we use our sprint board?
You can use your sprint board if you add the required custom fields and approval workflow. However, a separate Change Management project provides cleaner evidence — it contains only changes, not bugs, stories, and tasks. The filter for "all changes deployed during the audit period" is trivial on a dedicated project. For small teams, adding a Change issue type to an existing project works fine.
What counts as a "change" for SOC 2 CC8.1?
Any modification to the production environment: application code deployments, infrastructure changes (Terraform applies), database schema migrations, configuration changes (environment variables, feature flags), security policy updates, and access control changes. Bug fixes and hotfixes are changes too. Document in your change management policy what change types require tickets and what are exempt (e.g., documentation-only PRs, dependency patches below a certain severity).
How do we handle emergency changes that cannot wait for Jira approval?
Define an Emergency Change procedure: the on-call engineer deploys with verbal approval from the Engineering Manager, then opens a Jira Emergency Change ticket within 2 hours with all fields completed and the post-implementation review completed within 24 hours. Tag emergency changes with a label "Emergency" in Jira. Auditors expect occasional emergency changes — what they want to see is that each one was documented retroactively and reviewed, not swept under the rug.
Can Jira Software (agile boards) replace a dedicated ITSM tool for SOC 2?
Yes, for most SaaS companies. Dedicated ITSM tools like ServiceNow or Freshservice offer more advanced change management features (CAB meetings, change calendars, risk scoring), but Jira Software with custom fields and automation is sufficient for SOC 2 CC8.1. The key is that the tool enforces the required controls (approval before deployment, documented rollback plan), not the tool brand.
How do automated deployments (CI/CD) fit into Jira change management?
Automated CI/CD deployments triggered by PR merges still require a Jira change ticket. The PR is the change request; the Jira ticket is the authorization record. The CI/CD deployment is the controlled deployment mechanism. Link the PR to the Jira ticket, the Jira ticket to the deployment event. The automation makes the deployment process auditable, not exempt from change management requirements.

Automate your compliance today

AuditPath runs 86+ automated checks across AWS, GitHub, Okta, and 14 more integrations. SOC 2 and DPDP Act. Free plan available.

Start for free