
Andrew Hanna

Andrew Hanna

Short answer: SOX asks you to prove that whoever built a change did not release it, and that every production change traces back to an approved request. GDPR asks you to prove personal data was minimised and protected, including in sandboxes. A normal pipeline already produces most of that evidence, so the work is enforcing the controls in the pipeline rather than reconstructing them by hand once a year.
Two different laws with one overlapping demand: controls that are designed, enforced and evidenced.
Neither names a tool. Both want a control, evidence it ran, and evidence it ran every time.
Not all of it, and deciding early keeps the audit small. SOX scope follows the financial numbers:
GDPR scope has the opposite shape: it follows personal data wherever it lives, usually Contact, Lead, Case, Person Account, chat transcripts, and every sandbox copy.
Write the scope down before the audit. Answering that question for the first time in an audit meeting is how a review becomes a two-week fire drill.
Separation of duties means the author of a change cannot be the person who promotes it to production. Change sets cannot enforce that: whoever can deploy can also build. Push the control into the pipeline:
Auditors sample. They pick a few production changes and ask you to walk each from request to release. A pipeline answers with links, not screenshots:
Two properties make that evidence pass: it must be immutable, and complete, meaning no route to production skips it. A pipeline covering 90% of changes still fails, because the sample can land on the other 10%.
A full sandbox refresh copies production personal data into an environment with looser access and more people in it. That is a processing activity, and it needs justifying like any other.
Longer than Salesforce keeps it for you. Setup Audit Trail holds a rolling 180 days and can be downloaded as CSV. Field History Tracking retains roughly 18 months in the UI and 24 through the API, unless you licence Field Audit Trail with Shield and set a retention policy. SOX cycles are annual and evidence is requested for the whole period, so the native windows are not enough.
Git plus your DevOps platform fixes this: repository history is permanent, and deployment records live outside the org.
None of this needs a separate compliance product. It needs the release process you already wanted, configured so the controls are the only path. Most Salesforce DevOps platforms support it, including Copado, Gearset, AutoRABIT, Flosum and Serpent. More guides live in our SF Guides library.
Does SOX apply to our whole Salesforce org?
No. Scope follows financial reporting, so quoting, orders, billing and revenue objects plus the automation touching them. Document the boundary yourself, before the auditor draws it wider.
Can we be SOX compliant using change sets?
It is very hard. Change sets cannot separate the author from the deployer and leave no linked approval record, so you end up building a manual evidence layer beside them.
Is a full sandbox with production data a GDPR breach?
Not automatically, but it is a processing activity you must justify, minimise and secure. Seeding a subset and masking personal fields on refresh is the practical route.
Who should approve a production release?
Someone other than the author, plus the business owner of the affected process for anything in SOX scope. Record both approvals against the change.
Commitment free!