Customer Onboarding

Guided multi-step wizard for onboarding new tenants with log source integration, SIEM provisioning, and MITRE ATT&CK coverage mapping.

Overview

Enterprise SOCaaS platforms must onboard customers quickly and reliably. Manual onboarding -- spreadsheets, emails, and ad-hoc configuration -- leads to missed log sources, delayed time-to-value, and inconsistent coverage. The Customer Onboarding module provides a structured, automated onboarding pipeline that guides both internal SOC engineers and customer admins through every step from initial SOC assessment to validation.

What Was Proposed

What's Built Complete

Architecture

Service Layer

The OnboardingEngine class orchestrates both onboarding paths. It manages tenant state, data source connections, MITRE coverage calculations, Sentinel workbook deployment, and Defender integration. Data sources are tracked with health monitoring and the self-healing log source manager automatically reconnects degraded sources.

Frontend (Next.js)         API (FastAPI)              Services
+-----------------+   +-----------------------+   +---------------------+
| OnboardingPage  |-->| /api/v1/onboarding/*  |-->| OnboardingEngine    |
| 6-step wizard   |   | tenant/setup          |   |   setup_tenant()    |
| connector tests |   | datasources/connect   |   |   connect_source()  |
| MITRE heatmap   |   | mitre/coverage        |   |   get_mitre_cov()   |
| validation      |   | sentinel/workbooks    |   |   deploy_workbooks()|
+-----------------+   | defender/configure    |   |   configure_defender|
                      | reports/lifecycle     |   |   self_heal_log()   |
                      +-----------------------+   +---------------------+

Routing

Frontend Route
/onboarding
API Prefix
/api/v1/onboarding

Prerequisites

Data Model

FieldTypeDescription
tenant_idstrUnique tenant identifier
existing_socboolPath A (true) or Path B (false)
organization_namestrCustomer organization name
contact_emailstrPrimary contact email
industrystrIndustry vertical (Technology, Government, Healthcare, Finance, Education, Manufacturing, Retail)
sentinel_workspace_idstrSentinel workspace ID (Path A)
source_typeenumsiem | endpoint | cloud | network | identity | email | dns | firewall
connector_typeenumsentinel_connector | syslog_cef | api_poll | webhook | file_beat | wef | taxii_stix

API Endpoints

MethodEndpointDescription
POST/tenant/setupInitialize tenant onboarding
GET/tenant/{id}/statusGet onboarding progress
POST/datasources/connectAdd data source connection
GET/datasourcesList data sources with health
GET/datasources/{id}/healthDetailed source health
POST/datasources/{id}/testTest connectivity
POST/datasources/discoverAuto-discovery scan
GET/mitre/coverageMITRE ATT&CK heatmap data
GET/mitre/gapsCoverage gaps with recommendations
POST/sentinel/workbooks/deployDeploy workbook templates
GET/sentinel/workbooksList deployed workbooks
POST/defender/configureConfigure Defender EDR/ATP
GET/reports/lifecycleAlert lifecycle report
GET/reports/ingestionIngestion stats per source
GET/connectors/templatesAvailable connector templates
GET/self-healing/logRecent self-healing actions

UI Description

The onboarding page presents a 6-step progress stepper at the top with numbered circles connected by a progress bar. Steps transition with orange (#F97316) accents when completed.

Step 1: SOC Assessment

Two large selection cards: "Existing SOC" (connect workspace) and "Greenfield" (provision new). Selecting Existing SOC reveals Sentinel workspace ID and shared key inputs. Organization details (name, email, industry selector) are collected below.

Step 2: Data Sources

A 2-column grid of 15 connector templates with checkboxes. Each shows icon, name, description, source type badge, and a "Test" button. Connected/error status badges appear after testing.

Step 3: Sentinel Setup

Displays workspace connection info (existing) or provisioning details (greenfield). A checklist of 5 workbook templates with checkboxes. Summary cards show detection rules count, workbooks to deploy, and UEBA status.

Step 4: MITRE Mapping

A "Calculate Coverage" button triggers a heatmap across 14 MITRE ATT&CK tactics in a 7-column grid. Overall coverage percentage, covered/partial/uncovered technique counts are displayed in summary cards. Color legend: green (70%+), yellow (40-69%), red (<40%).

Step 5: Defender Integration

Azure Tenant ID and Client ID inputs. Feature checkboxes for EDR, ATP, Automated Investigation (always on), and Attack Surface Reduction (always on).

Step 6: Validation

A "Run Validation Suite" button triggers 6 sequential checks with animated progress. On success, a green completion banner with "Start Monitoring" CTA appears.

Source Files

ComponentPath
API Routerplatform/api/app/routers/onboarding.py
Service Engineplatform/api/app/services/onboarding_engine.py
Frontend Pageplatform/frontend/src/app/onboarding/page.tsx