Security Guides Security Guides

Security Guide for Private Investigation Service

A comprehensive architectural specification for Data Privacy and Compliance Officers (DPCOs) ensuring data integrity within Salesforce Enterprise Edition for the Professional Services - Private Investigation industry, including a detailed architectural breakdown of 5 practical threat scenarios and their mitigations.

Regulatory Framework Alignment & Audit Readiness

For private investigation agencies, protecting the identities of informants, surveillance subjects, and litigation support records is not merely an operational goal—it is a legal mandate. This architecture aligns Salesforce Sales Cloud Enterprise Edition and Salesforce Shield directly with GDPR, CCPA/CPRA, and strict attorney-client privilege guidelines. By leveraging deterministic encryption, robust role hierarchies, and programmatic sharing controls, organizations can successfully withstand rigorous third-party privacy audits.

Best Practice: Principle of Least Privilege (PoLP)

1. Hardening the Declarative Data Perimeter

In the investigative sector, the baseline assumption is that no field operative or analyst should have access to a case file unless explicitly assigned. To enforce this, Organization-Wide Defaults (OWD) for the primary operational objects must be set to strictly Private. This creates a zero-trust foundation. Access is then systematically opened up via a strict vertical Role Hierarchy. A Senior Investigator can view the `Investigation_Case__c` records of their direct subordinate field operatives, but lateral visibility between operatives in different units remains cryptographically and declaratively blocked. We construct Permission Set Groups to manage field-level security, ensuring operatives only see the fields required for their phase of the investigation.

Visualizing the Baseline Access Control Topology

Subject / Target Record
(OWD: Strictly Private)
➔
Operative Role Tier
(Vertical Role Inheritance)
➔
Record Access Granted
(Restricted R/W Access)

Technical Implementation Specifications

  • Protocol: Salesforce Metadata API Security Configuration Settings
  • Transformation: N/A (Native Declarative State Execution)
  • Security/Auth: Standard Salesforce Profile and Permission Set Group assignments
  • Target Salesforce Objects: Account, Contact, Investigation_Case__c
Architecture Focus: Automated Revocation

2. Dynamic Declarative Record Routing

An investigation is highly dynamic; a case transitioning from background research to active surveillance requires immediate realignment of access privileges. We orchestrate this using Salesforce Flow. When an `Investigation_Case__c` record updates its status to 'Active Surveillance', a record-triggered Flow executes asynchronous evaluation logic. It automatically provisions access to a targeted Public Group (e.g., 'Surveillance Team Alpha') by generating the required sharing records, while simultaneously revoking access from the initial background research group. This ensures adherence to the principle of least privilege throughout the investigation lifecycle without requiring manual administrative intervention.

Automated Recalibration Architecture

Investigation Status Update
(Field: Active Surveillance)
➔
Salesforce Flow Engine
(Asynchronous Evaluation)
➔
Targeted Public Group
(Dynamic Provision/Revocation)

Technical Implementation Specifications

  • Protocol: Declarative Flow Trigger Execution (Record-Triggered)
  • Transformation: Dynamic Boolean Logic and Object State Evaluation
  • Security/Auth: Internal Salesforce Sharing Computation Engine
  • Target Salesforce Objects: Investigation_Case__c, Task, Surveillance_Log__c
Best Practice: Cryptographic Segregation

3. Advanced Cryptography using Salesforce Shield Platform Encryption

Protecting Personally Identifiable Information (PII) such as Social Security Numbers, financial assets, and informant identities requires robust cryptographic controls at rest. We implement deterministic AES-256 encryption via Salesforce Shield Platform Encryption for highly sensitive structured fields, allowing field operatives to query records securely while ensuring the database layer stores only ciphertext. For unstructured data like uploaded surveillance photos or forensic financial documents, we employ probabilistic encryption. Furthermore, implementing a Bring Your Own Key (BYOK) model allows the firm to maintain strict control over Tenant Secrets, instantly destroying the key material if a systemic breach is detected, thereby cryptographically shredding the underlying data.

End-to-End Cryptographic Flow

Plaintext Data Input
(Informant PII / SSN)
➔
Shield Derivation Engine
(AES-256 BYOK Tenant Secret)
➔
Persistent Ciphertext
(Encrypted At Rest & Searchable)

Technical Implementation Specifications

  • Protocol: AES-256 Bit Cryptographic Algorithm
  • Transformation: Ciphertext-to-Plaintext via In-Memory Decryption
  • Security/Auth: Tenant Secret / BYOK Key Management Integration
  • Target Salesforce Objects: Standard Field Encryption / Files / Attachments
Architecture Focus: Threat Detection

4. Threat Prevention via Shield Event Monitoring

Malicious actors or compromised insiders often exhibit specific digital footprints before exfiltrating data, such as querying an abnormally high volume of contact records or exporting large matrix reports. We achieve comprehensive visibility into these behaviors via Salesforce Shield Event Monitoring. By leveraging the API to query the `EventLogFile` object, we capture 40+ granular event types—including `ReportEvent`, `ApiQuery`, and `LoginEvent`. This raw telemetry data is then ingested into a third-party Security Information and Event Management (SIEM) tool for real-time anomaly detection, allowing security teams to intercept a rogue investigator attempting to download a client list before departing the firm.

Event Telemetry Ingestion Architecture

User Interaction
(e.g., Bulk Report Export)
➔
Event Monitoring API
(Generates EventLogFile)
➔
External SIEM
(Anomaly Detection & Alerting)

Technical Implementation Specifications

  • Protocol: REST API / EventLogFile Query Execution
  • Transformation: Base64 Decoded Log Parsing into JSON
  • Security/Auth: OAuth 2.0 Connected App Session Controls
  • Target Salesforce Objects: EventLogFile, LoginEvent, ReportEvent
Best Practice: Auditable Access Justification

5. Matrixed Visibility using Apex Managed Sharing

In high-stakes private investigation operations, standard declarative sharing is occasionally insufficient for managing complex conflicts of interest. When an analyst requires temporary access to an `Investigation_Case__c` record outside their standard Role Hierarchy, we utilize Apex Managed Sharing. An Apex Trigger executes complex business logic to verify conflict-of-interest clearance, explicitly running via the with sharing keyword to enforce the current user's baseline context. Upon validation, the system executes a DML insert operation into the `Investigation_Case__Share` table. Crucially, we stamp this share record with a custom `RowCause` (e.g., `Conflict_Cleared__c`), providing compliance auditors with explicit, immutable justification for why access was granted.

Programmatic DML Sharing Execution

Complex Variables
(Conflict of Interest Clearance)
➔
Apex Trigger Execution
(Strictly Runs 'with sharing')
➔
ObjectShare DML Insertion
(RowCause Stamped for Audit)

Technical Implementation Specifications

  • Protocol: DML Operations interacting with Object Share Tables
  • Transformation: Complex Apex Trigger Business Logic Evaluation
  • Security/Auth: Programmatic User Context Enforcement (with sharing)
  • Target Salesforce Objects: Investigation_Case__Share, AccountShare
Practical Application

6. Applied Threat Modeling and Mitigation Scenarios

The architectural concepts outlined above provide theoretical resilience, but their true value is demonstrated in neutralizing active threats targeting Professional Services and Private Investigation operations. Below are the top five threat vectors facing the industry and exactly how this Salesforce architecture mitigates them.

Scenario A: Insider Data Theft

The Threat: A disgruntled senior investigator prepares to leave the agency for a competitor and attempts to export bulk lists of confidential informants, active case files, and client contact details using Salesforce reports.

The Mitigation: We detect and intercept this via Salesforce Shield. The Event Monitoring API captures the anomalous `ReportEvent` and immediate bulk download requests. This telemetry is fed into the agency's SIEM, automatically triggering account lockouts before the data leaves the corporate perimeter.

Scenario B: Compromised Partner/Vendor Lateral Movement

The Threat: A subcontracted forensic accountant's credentials are compromised via phishing. The attacker attempts to move laterally through the Salesforce instance to view unrelated, high-profile surveillance logs.

The Mitigation: Lateral movement is strictly blocked using Private OWD and Salesforce Flow routing. Because access is only provisioned dynamically to active assigned cases based on specific record states, the compromised account has absolutely no visibility into other cases, effectively containing the breach to a single, isolated record set.

Scenario C: Privileged Database Exfiltration

The Threat: A highly sophisticated attack bypasses the application layer and targets the underlying database directly, attempting to exfiltrate raw tables containing plain-text Social Security Numbers and litigation support files.

The Mitigation: The data is rendered useless via Salesforce Shield Platform Encryption and BYOK. Because the AES-256 cryptographic keys are derived using a tenant secret securely stored in hardware security modules—and never stored alongside the database—the exfiltrated raw tables remain completely indecipherable ciphertext.

Scenario D: Privilege Escalation via Access Drift

The Threat: Over several years, an operative transfers between multiple specialized task forces. They accumulate a massive backlog of access rights to old investigation cases (access drift), violating GDPR retention and access limitation guidelines.

The Mitigation: We enforce continuous compliance using programmatic RowCause deletion via Apex Managed Sharing. When an operative is rotated out of a unit, Apex triggers actively scan and delete `Investigation_Case__Share` records linked to their specific operational `RowCause`, guaranteeing automatic and permanent revocation of historical case access.

Scenario E: Backend SOQL Injection via Custom API

The Threat: An external legal client using a custom-built lightning portal attempts to manipulate SOQL query parameters to view the confidential investigation records belonging to a rival law firm.

The Mitigation: The custom Apex controllers backing the portal are inherently secure by using the with sharing keyword to enforce context. Even if a query is successfully manipulated, the Salesforce sharing engine strictly applies the external user's declarative sharing limitations, returning zero records outside their designated scope.