Screenata

Integrations / Version control & CI

Screenata + GitHub

How do you collect SOC 2, ISO 27001, and HIPAA evidence from GitHub?

Quick answer

GitHub is where change management gets proved, because SOC 2 CC8.1 asks you to show that a change was reviewed and authorized before it reached production, and the pull request record is what shows it. Having GitHub is not the control. The control is the enforced configuration, such as branch protection on production branches and a required approving review, plus the record that the configuration operated across the whole audit period. Screenata runs 21 native checks against that configuration on a schedule and turns each result into signed evidence mapped to the control it satisfies.

Screenata connects to GitHub read-only and runs 21 native checks against your organization: branch protection, review requirements, secrets scanning, and org-wide MFA. Repository scans run on push, code is never persisted, and each finding becomes a signed, timestamped evidence artifact mapped to SOC 2, HIPAA, and ISO 27001 controls through a shared control catalog.

21 native checks · read-only · signed evidence

What it proves

GitHub evidence, mapped to controls.

Each area below is scanned on a schedule. A finding is not a green checkmark: it is a signed artifact an auditor can verify, mapped to the exact requirement it satisfies.
Evidence area
What the checks verify
Maps to
Branch protection & review requirements

Protection rules on production branches and whether merges require review, verified per repository.

The change management evidence auditors sample first: proof that code cannot reach production without a second set of eyes.

SOC 2CC8.1ISO 27001A.8.32
Secrets scanning

Whether secrets scanning is enabled across repositories so credentials committed to code get caught.

Proof that credential leakage into the codebase is detected, protecting the keys that guard production.

SOC 2CC6.1ISO 27001A.8.28
Organization MFA

Whether the GitHub organization requires two-factor authentication for members.

Proof that access to your source code requires strong authentication.

SOC 2CC6.1HIPAA§164.312(d)ISO 27001A.8.5
Repository security posture

Repository-level security configuration across the organization, verified against your policy baseline.

Per-repository findings showing settings match the configuration your policies describe.

SOC 2CC8.1ISO 27001A.8.9

Control references are the requirements each evidence area supports, via the shared control catalog. Your auditor decides sufficiency; the artifacts are theirs to verify.

Compliance checks

What Screenata checks on GitHub, and why each matters.

Each row is a real native check, the framework control it produces evidence for, and the risk it closes. This is what continuous GitHub compliance actually looks like. Checks run on a schedule; a failing check opens a ticket and re-verifies after a human applies the fix.
Check & why it matters
Maps to

Branch Protection Rules

Without branch protection on the default branch, code can reach production with no enforced gate, which defeats change management. An auditor verifies that every repository protects its default branch.

SOC 2CC8.1SOC 2CC5.2

Require Approving Reviews

If merges do not require an approving review, changes reach production without a second set of eyes, so unauthorized or untested code can ship. An auditor verifies that the default branch requires at least one approval before merge.

SOC 2CC8.1SOC 2CC5.2

Status Checks Required

When passing status checks are not required before merge, untested or failing code can reach production. An auditor verifies that the default branch requires status checks to pass before a merge.

SOC 2CC8.1SOC 2CC5.2

Signed Commits Required

Unsigned commits cannot be tied to a verified author, so change history can be forged and attribution lost. An auditor verifies that the default branch requires signed commits.

SOC 2CC8.1SOC 2CC5.2

Protection Applies to Admins

If branch protection does not apply to administrators, privileged users can bypass review and push straight to production. An auditor verifies that protection rules are enforced for admins too.

SOC 2CC8.1SOC 2CC5.2

Force Push Disabled

Force pushing to the default branch rewrites history and can erase the record of what changed and who approved it. An auditor verifies that force push is disabled on the default branch.

SOC 2CC8.1SOC 2CC5.2

CODEOWNERS Review Required

Without required review from code owners, changes to sensitive paths merge without the accountable reviewer, weakening change authorization. An auditor verifies that the default branch requires CODEOWNERS review.

SOC 2CC8.1SOC 2CC5.2

Linear History Required

A tangled merge history makes it hard to trace which reviewed change introduced a given commit. An auditor verifies that the default branch enforces linear history.

SOC 2CC8.1SOC 2CC5.3

Organization MFA Required

Without organization-wide two-factor authentication, a stolen password is enough to reach your source code. An auditor verifies that the GitHub organization requires MFA for all members.

SOC 2CC6.1SOC 2CC6.3

Secret Scanning Enabled

Credentials committed to a repository stay exploitable until found, and secret scanning is what catches them. An auditor verifies that repositories have secret scanning enabled.

SOC 2CC7.2SOC 2CC4.1

Dependabot Security Updates

Vulnerable dependencies remain exploitable until patched, and Dependabot surfaces and proposes those fixes. An auditor verifies that repositories have Dependabot security updates enabled.

SOC 2CC7.2SOC 2CC4.1

Repositories Not Publicly Visible

A repository set to public can expose source code and embedded secrets to anyone. An auditor verifies that repositories are private unless intentionally published.

SOC 2CC6.1SOC 2CC6.6ISO 27001A.8.23HIPAA§164.308(a)(4)

GitHub Actions Deployment Evidence

Deployments that leave no record cannot be shown as authorized and tested, which is the core of change management. An auditor reviews recent production deployment runs and their logs as proof that changes followed the defined process.

SOC 2CC8.1ISO 27001A.12.1.2HIPAA§164.308(a)(8)

Production Repository Access Roster

Auditors sample who can push to production code, so an accurate roster of collaborators and their permission levels is needed. This check enumerates the code-access and write or admin populations per repository as the evidence for that sample.

SOC 2CC6.1SOC 2CC8.1ISO 27001A.8.2HIPAA§164.308(a)(4)(ii)(C)

Dependabot Alerts Remediated Within SLA

Known vulnerabilities left open past their remediation window are the ones attackers exploit. An auditor verifies that critical and high alerts are fixed inside the defined SLA and reviews overdue alerts as evidence.

SOC 2CC7.1SOC 2CC7.2ISO 27001A.8.8HIPAA§164.308(a)(1)

Merged PR Review & CI Evidence Sample

Change management is tested by sampling merged changes to confirm each was reviewed by someone other than the author and passed its checks. This check samples merged pull requests to production and records the review and CI status at merge.

SOC 2CC8.1SOC 2CC5.2ISO 27001A.8.32HIPAA§164.308(a)(8)

Production Branch Bypass Audit

If protection on production branches can be overridden without a trace, the review gate is only as strong as its exceptions. An auditor reviews override events to confirm branch protection stayed enforced.

SOC 2CC6.3SOC 2CC8.1ISO 27001A.8.32HIPAA§164.312(c)(1)

GitHub Security Scan Run History

A configured security scan that has not actually run leaves code unexamined between commits. An auditor reviews the run history to confirm security workflows execute on the expected cadence.

SOC 2CC7.1ISO 27001A.8.8HIPAA§164.308(a)(8)

Drawn from Screenata’s GitHub check library. Control refs are the requirements each check produces evidence for; your auditor decides sufficiency.

How it connects

Read-only, revocable, yours.

You install a read-only GitHub connection scoped to the repositories you choose. Scans run on push and on a schedule, code is never persisted, and credentials never touch the Screenata database. Findings are hashed and stored as evidence the moment they land.

Read-only by construction

OAuth scopes and IAM roles are scoped to read. Vera never gets write access to your systems.

Signed findings

SHA-256 per artifact, RSA/ECDSA signatures, RFC 3161 timestamps. Verifiable without a Screenata account.

Mapped to controls

Each finding lands on the shared control catalog, so one scan satisfies SOC 2, HIPAA, and ISO 27001 at once.

GitHub FAQ

What teams ask before connecting.

Full provider list on the integrations page.
What access does Screenata need to GitHub?

A read-only connection scoped to the repositories you select. Scans read configuration and metadata; code is never persisted on Screenata's side, and the connection can be revoked from your GitHub settings at any time.

Does Screenata read my source code?

Scans evaluate repository configuration, branch protection, and security settings. Code is never persisted; what is stored is the finding, hashed and signed, not your source.

How does the GitHub integration help with SOC 2 change management?

CC8.1 asks you to prove that changes are authorized, tested, and reviewed before deployment. Branch protection and required reviews are the technical enforcement of that, and the scan-on-push cadence produces a continuous record instead of a one-time screenshot. Vera also reviews pull requests that touch controlled areas and links them to the relevant control.

What happens when a GitHub check fails?

Vera opens a ticket describing the failing configuration and re-verifies after a human applies the fix. Nothing in your organization is changed by Screenata; the connection is read-only by construction.

What are the steps to implement SOC 2 with GitHub?

First, connect Screenata to GitHub with a read-only scope covering the repositories in scope. Second, let the first scan run so the baseline reflects how the organization is actually configured rather than how you assume it is. Third, fix what fails: enable branch protection on production branches, require an approving review before merge, require status checks to pass, disable force push on the default branch, and turn on secret scanning and Dependabot security updates. Fourth, leave the scheduled scans running so passing results accumulate as signed evidence across the observation window, which for a Type 2 report is usually three to twelve months. Fifth, hand the evidence package to an independent auditor. The audit is a separate engagement with a licensed CPA firm, which issues the report; Screenata prepares and holds the evidence it asks for.

What evidence do auditors ask for about change management?

They pick a sample of merged changes and expect four things for each one. That a review happened before the merge, not after. That an enforced branch protection configuration made the review mandatory rather than a convention people follow. That the approver was someone other than the author. And that the record covers the whole audit period, not a screenshot taken the week before fieldwork. The Merged PR Review and CI Evidence Sample check produces the sample, Branch Protection Rules and Require Approving Reviews show the enforcement, and the Production Branch Bypass Audit shows whether anyone overrode the gate while it was supposedly in force.

Do auditors accept evidence Screenata collects from GitHub?

Yes. Every finding is exported as a signed, timestamped artifact, a SHA-256 hash with an RSA or ECDSA signature and an RFC 3161 timestamp, that an auditor verifies outside Screenata with a free CLI. A person reviews and approves the evidence before it reaches the auditor. Screenata collects and signs it; it does not decide the audit result.

Connect and see

Fifteen minutes after connecting GitHub, you know your real posture.

Pricing

Related: GitLab · Bitbucket · Azure DevOps · AWS