User Interface medium complexity frontend
0
Dependencies
0
Dependents
3
Entities
0
Integrations

Description

The main admin page rendering the consolidated security posture view for the platform. It displays real-time metric panels for active sessions, recent authentication events, failed login attempts, and module access patterns in a single tenant-scoped layout. Global admins see cross-organization summaries only when a time-bounded support access grant is active.

Feature: Security Dashboard

security-dashboard-page

Sources & reasoning

admin-security is explicitly listed as always-on for the Admin Web Portal (line 241), establishing MVP scope. The Security Dashboard is the primary visibility surface for that area. The strict multi-tenant isolation requirement (line 259) and the sensitive data categories processed by all four organizations justify a dedicated security metrics page from launch, not a later phase.

  • docs/source/likeperson.md · line 239-241
    Always-on core. A small set of modules is non-toggleable because the operational products are meaningless without them... Admin Web Portal: `admin-dashboard`, `admin-user-management`, `admin-organization`, `admin-security`.
  • docs/source/likeperson.md · line 259
    No default access to an organization's operational data (users, activities, contacts). Tenant separation is strict: each org's data is isolated.

Responsibilities

  • Render metric panels for active sessions, auth events, failed logins, and access patterns
  • Scope displayed data to the current tenant, with cross-org view gated on support access grants
  • Poll or subscribe to SecurityMetricsService for live metric updates
  • Surface anomaly highlights and allow admins to navigate to detailed audit or session views
  • Adapt layout and available actions based on organization vs global admin role

Interfaces

loadDashboard(tenantId: string): void
refreshMetrics(): void
navigateToAuditLog(filter: AuditFilter): void
navigateToSessionDetail(sessionId: string): void

Related Data Entities (3)

Data entities managed by this component