v1.0 New Module

Law Enforcement Intelligence Module

Cross-case entity profiling, link analysis graph visualization, automated intelligence correlation & watchlist management for investigations.

Home / Documentation / LE Intelligence

Overview

The Law Enforcement Intelligence Module transforms the Investigation Management System (IMS) into a full-featured intelligence platform. It enables investigators to build comprehensive entity profiles, map relationships visually, discover hidden connections across cases, and prioritize high-risk subjects β€” all within StrataGRC.

Entity Registry

Central repository for persons, vehicles, phones, addresses, organizations, and devices β€” each with identifiers, aliases, case involvement, and risk scoring.

Link Analysis

Interactive graph visualization of entity relationships with type-based coloring, strength-weighted edges, depth expansion, and click-to-inspect.

Intel Scanning

Automated cross-case correlation engine that matches entities across investigations by shared identifiers, aliases, and name similarity.

Watchlist

Risk-tiered watchlist with critical/high/medium/low levels, auto-generated alerts on additions, and clearance tracking.

Use Cases

πŸ”—
Cross-Case Connection Discovery

A suspect's phone number appears in three separate fraud investigations. The intel scanner detects the shared identifier across cases and generates an alert, enabling investigators to consolidate efforts.

πŸ•ΈοΈ
Criminal Network Mapping

An investigator builds a relationship graph around a target, revealing connections to vehicles, co-conspirators, and addresses across 5 different cases, exposing the full network.

πŸ“‹
Watchlist & High-Risk Monitoring

A known fraudster is placed on the watchlist at critical risk. When any new investigation links to that entity, an intelligence alert is triggered for immediate review.

πŸ”
360Β° Entity Investigation

An analyst views a suspect's profile showing all identifiers (phone, BVN, NIN, email), aliases, linked cases with roles, relationship map, and activity timeline in one place.

πŸ“Š
Intelligence-Led Policing

Management reviews the LE dashboard for entity type breakdown, watchlist counts, active alerts, and most-referenced entities to deploy resources effectively.

🚘
Vehicle-to-Suspect Linking

A vehicle plate number identified at a crime scene is entered as an entity, linked to its registered owner, and the graph reveals all known associates of the owner across cases.

Geospatial Intelligence

The geospatial module plots entity locations on an interactive map with OpenStreetMap tiles. Add locations with latitude/longitude coordinates and type (home, work, last seen, crime scene, meeting point). The map supports marker clustering for large datasets, heatmap toggling for density analysis, and per-entity-type color coding (blue for persons, orange for vehicles, green for phones, red for addresses).

Filter the map by entity to trace movement patterns or view all entities simultaneously. Each marker shows entity name, location type, address, and date recorded in a popup.

CDR Toll Analysis

Import call detail records via CSV upload with columns for caller number, receiver number, call type (incoming/outgoing/missed/sms), call date, and duration. The module generates a call frequency chart by hour, top contacts table, and statistics dashboard showing total records, incoming/outgoing/SMS breakdown, total duration, and average call length.

Phone entities can be linked to CDR records, and the data is accessible from the entity dossier tab.

Financial Intelligence

Import financial transaction data via CSV. The module auto-flags transactions above a configurable threshold for review. Visualize money flow paths with proportional bars showing top movement routes, and view monthly inflow/outflow charts. Summary cards show total inflow, outflow, transaction count, and flagged count.

OSINT Integration

Built-in open-source intelligence tools for phone number lookup (carrier detection, country, line type), email verification (format, MX check, free email detection), domain WHOIS resolution, and social media presence checks. Results are cached per entity for audit trail.

Investigator Dossier

Each entity profile now features a tabbed dossier consolidating seven data views: Connections (relationship graph plus network gap detection), Map (all recorded locations), CDR (call records summary), Financial (money flow summary), Statements (witness statements across cases), OSINT (live lookup plus search history), and Timeline (unified chronology of all entity activity).

The network gap detection identifies entities that appear in the same investigations but have no direct relationship recorded β€” flagged as potential missing connections or bridges between cases.

Getting Started

The LE Intelligence module is available to organizations on the Enterprise plan or higher. It is accessed from the IMS dropdown menu or directly via the module's dashboard.

Prerequisites

  • Active Enterprise or Unlimited subscription plan
  • law_enforcement feature enabled in the plan's features array
  • Active investigations in the IMS module (cases to link entities to)

Quick Start Steps

1 Create Entities β€” Navigate to Entity Profiles β†’ New Entity and add persons, vehicles, phones, or organizations involved in your investigations. Add identifiers like phone numbers, BVN, NIN, plate numbers, and email addresses.
2 Link to Cases β€” While creating or editing an entity, link it to one or more investigations with a role (suspect, victim, witness, POI, informant, etc.).
3 Map Relationships β€” Open the Link Analysis page, click "New Relationship" and connect entities with relationship types (owner_of, associated_with, co-conspirator, etc.) and strength levels.
4 Run Intel Scan β€” Go to Intel Center and click "Run Cross-Case Scan" to automatically discover connections across all investigations.
5 Set Up Watchlist β€” From any entity profile, click "Watchlist" to flag high-risk subjects. Set the risk level and reason for monitoring.
6 Review Alerts β€” Monitor the Intel Center for automatically generated alerts. Mark them as reviewed, investigating, resolved, or dismissed.
Pro Tip

Start by syncing existing POI records from IMS β€” the setup script (setup_le_intelligence.php) automatically migrates all existing persons of interest into the entity registry and links them to their cases.

Entity Profiles

The Entity Registry is the core of the LE module. Every person, vehicle, phone, address, organization, or device of interest is stored as an entity with rich metadata.

Entity Types

TypeUse CaseTypical Identifiers
PersonSuspects, victims, witnesses, informantsPhone, BVN, NIN, Email, SSN, Social Media
VehicleCars, motorcycles, trucks linked to incidentsPlate Number, VIN, Engine Number
PhoneMobile devices used in communicationsIMEI, Phone Number, ICCID
AddressLocations of interest, crime scenes, residencesFull Address, GPS Coordinates
OrganizationCompanies, groups, front entitiesRC Number, TIN, Address
DeviceComputers, tablets, IoT devicesMAC Address, Serial Number, IMEI

Profile Sections

Each entity profile page (le_entity.php?id=X) provides a 360Β° view:

  • Profile Header β€” Entity type badge, display name, aliases, case count, connection count, risk score, and action buttons (Edit, Watchlist, View Graph).
  • Identifiers β€” All known identifiers (phone, email, BVN, NIN, plate, IMEI, etc.) with the ability to add, verify, or remove.
  • Aliases β€” Known aliases, street names, online handles, and birth names.
  • Investigations β€” All cases this entity is linked to, with role badges (suspect, victim, witness, etc.).
  • Relationship Map β€” Mini vis-network graph showing direct connections, plus a list of all known relationships with type and strength.
  • Activity Timeline β€” Chronological log of when the entity was added to cases and when relationships were created.

Adding Identifiers

Identifiers are the key to cross-case matching. Supported types:

Phone
Email
BVN
NIN
Passport
Plate Number
IMEI
SSN
Social Media
Address

The intel scanner searches for entities that share identical identifier values across different investigations β€” this is the primary method for discovering cross-case connections.

Nigerian-Specific Identifiers

The module includes Nigerian-specific identifiers: BVN (Bank Verification Number), NIN (National Identification Number), and plate number formats. These are critical for matching suspects across federal and state-level investigations.

Intelligence Center

The Intel Center (le_intelligence.php) serves as the command hub for all intelligence activities. It displays alerts from the cross-case scanning engine and provides tools for managing the intelligence lifecycle.

Cross-Case Intelligence Scanning

The cross-case scan engine automatically searches for connections across all investigations by checking:

  • Shared Identifiers β€” Same phone number, email, BVN, NIN, plate number, or IMEI appearing in different cases.
  • Alias Matches β€” Same alias or street name used for different entities in different cases.
  • Name Similarity β€” SOUNDEX-based phonetic matching of last names with matching first name initials across cases.
  • Shared Entity Connections β€” Two different entities linked by a shared identifier value across separate investigations.

How to Run a Scan

  1. Navigate to Intel Center.
  2. Click the Run Cross-Case Scan button in the top-right.
  3. A progress bar displays the scanning stages: checking identifiers, matching entities, comparing aliases, analyzing name similarity, generating alerts.
  4. When complete, the page reloads to show any new alerts generated.
When to Scan

Run the cross-case scan after adding new entities, identifiers, or linking entities to new cases. The scan is manual to give investigators control over when intelligence processing occurs.

Alert Management

Intelligence alerts are automatically generated by the scan engine and by certain user actions (e.g., adding to watchlist, creating relationships). Each alert contains:

  • Title β€” Brief description of the finding
  • Type β€” cross_case_match, entity_link, pattern_detected, anomaly, watchlist_hit, relationship_discovered, temporal_match
  • Severity β€” info, low, medium, high, critical (color-coded dots)
  • Confidence Score β€” 0-100% indicating the reliability of the match
  • Status β€” new, reviewed, investigating, resolved, dismissed
  • Related Entity β€” Link to the entity profile
  • Related Cases β€” Links to the involved investigations

Alert Workflow

1 New β€” Alert is generated and appears in the unfiltered list. The dashboard shows a count of new alerts.
2 Reviewed β€” Analyst reads the alert and acknowledges it.
3 Investigating β€” Active investigation is underway based on the alert.
4 Resolved β€” The finding has been addressed.
5 Dismissed β€” False positive or irrelevant alert.

Filtering Alerts

Use the status and severity dropdown filters at the top of the alerts table to narrow down the list. Common workflows:

  • Filter by status = new and severity = critical to see urgent unreviewed alerts.
  • Filter by status = investigating to see active intelligence leads.
  • Filter by alert_type = cross_case_match to find entities linked across cases.

Alert Detail Modal

Click any alert title to open a detail modal showing the full description, severity, confidence score, related entities, related cases, and status update buttons. This allows analysts to take action without leaving the Intel Center.

Watchlist Management

The Watchlist (le_watchlist.php) provides centralized monitoring of high-risk entities. Watchlisted entities are highlighted throughout the module and trigger intelligence alerts.

Risk Levels

LevelColorUse Case
CriticalRedImmediate threat, active flight risk, violent offenders, terrorism suspects
HighOrangeRepeat offenders, organized crime members, high-value targets
MediumBluePersons of interest under observation, potential associates
LowGreyMonitoring for information gathering, peripheral contacts

Adding to Watchlist

There are two ways to add an entity to the watchlist:

  1. From Entity Profile β€” Open any entity's profile and click the "Watchlist" button in the profile header.
  2. Direct URL β€” Navigate to le_watchlist.php?action=add&entity_id=X with the entity ID.

When adding to the watchlist, you must provide:

  • Risk Level β€” Critical, High, Medium, or Low
  • Reason β€” Mandatory text explaining why the entity is being watchlisted (e.g., "Flight risk β€” known to travel frequently", "Repeat cyber fraud suspect")
  • Notes β€” Optional additional context

Watchlist Actions

  • Remove β€” Click the X button to clear an entity from the watchlist. This sets status to "cleared" with a timestamp and user ID for audit trail.
  • Clear All β€” Bulk action to clear all active watchlist entries. Requires confirmation.
  • Filter β€” Filter by status (active/cleared/expired) and risk level (critical/high/medium/low).

Automatic Alerts

When an entity is added to the watchlist, the system automatically generates an intelligence alert of type watchlist_hit with high severity and 90% confidence. This ensures that watchlist additions are always recorded and visible in the Intel Center.

Feature Access & Permissions

The LE Intelligence Module is feature-gated at two levels:

Subscription Plan

The law_enforcement feature must be present in the subscription plan's features array (JSON). This is checked by canAccessFeature('law_enforcement').

PlanLE Intelligence Access
Essentials Not available
Professional Not available
Enterprise Available
Unlimited Available

Admin Override

Users with admin permission via hasPermission('admin') can access the LE module regardless of the subscription plan feature check. This allows administrators to configure and test the module.

Navigation Visibility

The LE Intelligence submenu appears under the IMS dropdown in the main navigation bar, but only for users who have access. The submenu items are:

  • LE Dashboard
  • Entity Profiles
  • Link Analysis
  • Intel Center
  • Watchlist

Frequently Asked Questions

Run the setup script: php ims/setup_le_intelligence.php. This creates all required tables and syncs existing IMS POI records into the entity registry. The script is safe to re-run (it skips if data already exists).

The menu only appears for users with the law_enforcement feature enabled in their subscription plan. Ensure your organization is on the Enterprise or Unlimited plan and that the feature is added to the plan's JSON features array.

Yes. An entity can be linked to any number of investigations through the le_entity_cases junction table. Each link has its own role (suspect, victim, witness, POI, informant, etc.), allowing the same person to be a suspect in one case and a witness in another.

All related data is cascade-deleted: identifiers, aliases, case links, relationships, and watchlist entries are automatically removed. The intel alerts referencing the entity are preserved (without the entity link).

Confidence scores are based on match type: shared identifier matches get 85%, watchlist additions get 90%, relationship discoveries get 75%. These are static scores that reflect the reliability of the match type. Future versions will incorporate weighted scoring based on match frequency and recency.

Yes. When you search, filter, or change the depth on the Link Analysis page, it fetches fresh data from the server via AJAX. The graph re-renders with the new data. Node positions are managed by a physics simulation for optimal layout.