mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-07-24 13:01:56 +00:00
68 lines
2.2 KiB
Plaintext
68 lines
2.2 KiB
Plaintext
---
|
|
title: 'Overview'
|
|
---
|
|
|
|
Prowler Local Server is a self-hosted web application that simplifies running Prowler. It provides:
|
|
|
|
- **User-friendly interface** for configuring and executing scans
|
|
- Dashboard to **view results** and manage **security findings**
|
|
|
|

|
|
|
|
## Components
|
|
|
|
Prowler Local Server consists of four main components:
|
|
|
|
- **Prowler UI**: User-friendly web interface for running Prowler and viewing results, powered by Next.js
|
|
- **Prowler API**: Backend API that executes Prowler scans and stores results, built with Django REST Framework
|
|
- **Prowler SDK**: Python SDK that integrates with Prowler CLI for advanced functionality
|
|
- **Prowler MCP Server**: Model Context Protocol server that exposes AI tools for Lighthouse, the AI-powered security assistant. Required dependency for Lighthouse.
|
|
|
|
Supporting infrastructure includes:
|
|
|
|
- **PostgreSQL**: Persistent storage of scan results
|
|
- **Celery Workers**: Asynchronous execution of Prowler scans
|
|
- **Celery Beat (API Scheduler)**: Schedules recurring scans and enqueues jobs on the broker
|
|
- **Valkey**: In-memory database serving as message broker for Celery workers
|
|
- **Neo4j**: Graph database used by the Attack Paths feature to combine cloud inventory with Prowler findings (currently populated by AWS scans)
|
|
|
|
```mermaid
|
|
flowchart TB
|
|
user([User / Security Team])
|
|
cli([Prowler CLI])
|
|
|
|
subgraph APP["Prowler Local Server"]
|
|
ui["Prowler UI<br/>(Next.js)"]
|
|
api["Prowler API<br/>(Django REST Framework)"]
|
|
worker["API Worker<br/>(Celery)"]
|
|
beat["API Scheduler<br/>(Celery Beat)"]
|
|
mcp["Prowler MCP Server<br/>(Lighthouse AI tools)"]
|
|
end
|
|
|
|
sdk["Prowler SDK<br/>(Python)"]
|
|
|
|
subgraph DATA["Data Layer"]
|
|
pg[("PostgreSQL")]
|
|
valkey[("Valkey / Redis")]
|
|
neo4j[("Neo4j")]
|
|
end
|
|
|
|
providers["Providers"]
|
|
|
|
user --> ui
|
|
user --> cli
|
|
ui -->|REST| api
|
|
ui -->|MCP HTTP| mcp
|
|
mcp -->|REST| api
|
|
api --> pg
|
|
api --> valkey
|
|
beat -->|enqueue jobs| valkey
|
|
valkey -->|dispatch| worker
|
|
worker --> pg
|
|
worker -->|Attack Paths| neo4j
|
|
worker -->|invokes| sdk
|
|
cli --> sdk
|
|
|
|
sdk --> providers
|
|
```
|