Sphinx 21 CFR Part 11 setup guide

Configuring Sphinx for 21 CFR Part 11

Read this first. No software can make an organisation Part 11 compliant, and this document is not legal or regulatory advice. Part 11 governs your practices: your validation, your SOPs, your training records, your signature manifestations, and your certification to the FDA that electronic signatures are the legally binding equivalent of handwritten ones. Sphinx supplies technical controls that a compliant system needs; whether your use of it is compliant is a determination for your quality and regulatory functions. Treat everything below as an engineering checklist to hand to those people, not as a substitute for them.

1. What the software does, mapped to the regulation

RequirementWhat Sphinx providesWhat you must still do
§ 11.10(a) validation Deterministic, inspectable behaviour; a hash-chained audit trail that makes silent change detectable. Perform and document IQ/OQ/PQ against your own requirements. Software cannot validate itself.
§ 11.10(b) accurate copies Content is content-addressed by SHA-256 and verified on every read; audit logs export as signed, timestamped PDF/A-2b. Confirm the exported form is acceptable to your inspectors, and test that exports open and verify on your systems.
§ 11.10(c) record protection and retrieval Every version retained; deletes are tombstones; time-travel reconstruction of any past state. Back up Postgres and object storage, test restores, and set a retention period that meets your predicate rules.
§ 11.10(d) limited access OIDC authentication; per-library and per-folder authorisation; global administration confers no access to any library's contents, structure, audit log or permissions, so an administrator must take a recorded grant before they can see anything. No anonymous access other than the public hash-chain publications, which contain no data. Operate the identity provider to an equivalent standard, and review grants periodically.
§ 11.10(e) secure, time-stamped audit trails Append-only per-library chain covering creates, modifications, deletions, permission changes, signatures and reads. Each entry commits to the whole prior history; the server refuses to record anything while its clock is unverified. Leave read auditing enabled when creating libraries. Keep NTP reachable. Retain the log for the record retention period.
§ 11.10(f) operational sequencing Archived libraries reject content changes and signatures; blacklisted content cannot be re-introduced silently. Define your workflow states in SOPs; Sphinx does not model approval workflows for you.
§ 11.10(g) authority checks Capability-based authorisation on every operation; management authority is separate from content access. Document who may hold which role and why, and evidence periodic review.
§ 11.10(k) documentation controls Versioning and audit history apply to the documents you store, including your SOPs if you store them here. Control your own system documentation and revision history.
§ 11.50 signature manifestations Each signature records the signer's printed name, the date and time, the meaning (Review, Approval, Authorship) and the exact SHA-256 of the signed version, all inside the audit chain and reproduced in exports. Confirm the meanings offered match your process, and that they appear correctly on your printed outputs.
§ 11.70 signature/record linking Signatures bind to a specific immutable version hash, not to a file name, so they cannot be transferred to different content. Nothing further technically; cover it in your validation evidence.
§ 11.100(a) unique identity Identity comes from the OIDC subject; grants key on verified email addresses. Guarantee at the identity provider that identifiers are never reused or shared, and verify identity of individuals before issuing accounts.
§ 11.200(a) signature components Every signature forces a fresh authentication at the identity provider (prompt=login with max_age=0), and the freshness is verified server-side before the signature is recorded. Configure the IdP so that a fresh login means both components — user identification and password (and any additional factor). If the IdP silently re-authenticates by cookie, the control is defeated.
§ 11.300 identification code / password controls Sphinx holds no passwords at all. Entirely yours: password ageing, complexity, lockout, device token management, and periodic testing.

2. Required configuration

These are the settings that a compliant deployment is expected to have. Several are defaults, but they can be turned off, so verify each one on the running system.

3. Operational practices Sphinx cannot enforce

4. Things worth knowing before an inspection

5. A minimal qualification checklist

Evidence worth capturing during OQ, all reproducible from the interface:

  1. Upload a file; confirm the audit entry, hash and version number.
  2. Upload a changed copy under the same name; confirm it becomes version 2 and version 1 is still retrievable.
  3. Delete the file, upload it again at the same path, and confirm the history continues rather than restarting.
  4. Sign a version; confirm re-authentication was demanded, and that the printed name, meaning, timestamp and hash appear in the log.
  5. Attempt an action without permission; confirm refusal and that nothing was recorded as having happened.
  6. Run Verify chain; confirm it passes. Then, in a test database only, alter one audit row directly and confirm verification fails and identifies the entry.
  7. Export the audit log; verify the PDF signature and timestamp with your own tooling, and recompute a few chain hashes by hand from the printed canonical fields.
  8. Compare the certificate fingerprints printed in an export against /public/certificates, and confirm the root fingerprint matches the one in your validation records.
  9. Block outbound access to the timestamping authorities; confirm that audit exports are refused with an explanation, that the red banner appears, that uploads and signatures still work, and that the deferred daily publication is produced afterwards and states why it was late.
  10. Use History to reconstruct the library at a past moment; confirm it matches what you know the state to have been.
  11. Stop NTP or skew the clock; confirm the server refuses to record audited operations.

Sphinx is a technical control set, not a compliance certificate. The controls above are designed to make the evidence hard to falsify and easy to produce; the surrounding quality system is what makes it compliant.