> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myrmex.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# PostgreSQL

> Collega un database PostgreSQL a Myrmex — crea un ruolo di audit in sola lettura e aggiungi l'integrazione.

import { Note, Steps, Step, CardGroup, Card, Tip } from '@mintlify/components';

Collega il tuo database **PostgreSQL** in modo che Myrmex possa verificarne l'hardening e la conformità, controllarne lo stato operativo, esplorarne lo schema e — previa approvazione — eseguire SQL per te. Myrmex raggiunge il database tramite il protocollo nativo attraverso un [Collector](/it/documentation/agent-endpoint-security/collector-mode) sulla tua rete. Le operazioni vengono eseguite in tempo reale e su richiesta tramite l'agente [Integration Specialist](/it/documentation/multi-agent-system/integration-specialist-agent): Myrmex legge solo ciò che richiedi e non conserva alcun tuo dato dal lato Myrmex.

## Cosa può fare Myrmex

<CardGroup cols={2}>
  <Card title="Audit di conformità" icon="shield-halved">
    Esegui un audit di [Security Posture](/it/documentation/security-posture/overview) e mappa i risultati sui [framework](/it/documentation/security-posture/frameworks) CIS, ISO 27001, NIST CSF e BACEN.
  </Card>

  <Card title="Controlli di stato" icon="heart-pulse">
    Esamina le connessioni, i rapporti di cache hit, il ritardo di replica e il bloat delle tabelle.
  </Card>

  <Card title="Esplora le tabelle" icon="table">
    Elenca schemi e tabelle per vedere cosa contiene il database.
  </Card>

  <Card title="Descrivi la struttura" icon="sitemap">
    Ispeziona colonne, tipi, indici e vincoli di qualsiasi tabella.
  </Card>

  <Card title="Scansione dei dati sensibili" icon="user-secret">
    Analizza tabelle e colonne alla ricerca di dati personali o sensibili che necessitano di protezione.
  </Card>

  <Card title="Esegui SQL" icon="terminal">
    Esegui query di lettura in qualsiasi momento; le istruzioni di scrittura (DDL/DML) richiedono la tua conferma.
  </Card>
</CardGroup>

## Prima di iniziare

* Un **Collector** su una rete in grado di raggiungere l'host PostgreSQL sulla sua porta TCP (predefinita `5432`). Consulta [Collector mode](/it/documentation/agent-endpoint-security/collector-mode).
* Un **login di database dedicato** per Myrmex (crealo nel Passaggio 1).
* Si consiglia **TLS**. Imposta SSL Mode su `require` per crittografare la connessione; i server senza TLS usano `disable` (l'audit segnala la crittografia mancante).

## Passaggio 1 — Creare la credenziale in PostgreSQL

Crea un ruolo dedicato e con privilegi minimi per l'auditing. `pg_monitor` concede accesso in lettura alle view di statistiche e configurazione su cui si basa l'audit.

```sql theme={null}
-- As a superuser (e.g. postgres)
CREATE ROLE myrmex_audit LOGIN PASSWORD 'a-strong-password';
GRANT pg_monitor TO myrmex_audit;

-- Optional: lets the audit check host-based authentication (pg_hba) rules
GRANT SELECT ON pg_hba_file_rules TO myrmex_audit;
GRANT EXECUTE ON FUNCTION pg_hba_file_rules() TO myrmex_audit;
```

<Tip>
  Mantieni l'account in sola lettura per l'auditing. Concedi un ruolo con capacità di scrittura solo se vuoi che gli agenti eseguano istruzioni di scrittura (DDL/DML) tramite **Run SQL**.
</Tip>

## Passaggio 2 — Aggiungere l'integrazione in Myrmex

Dal **Directory**, scegli **Add Integration → PostgreSQL**, quindi compila:

| Field           | Descrizione                                                                                                                   |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| **Name**        | Un nome univoco per questo database.                                                                                          |
| **Description** | Nota opzionale per identificare l'istanza.                                                                                    |
| **Host**        | Host o IP di PostgreSQL (ad es. 10.0.0.10 o db.corp.local).                                                                   |
| **Port**        | Porta TCP (predefinita `5432`).                                                                                               |
| **Database**    | Database a cui connettersi (predefinito `postgres`).                                                                          |
| **Username**    | Ruolo di audit (in sola lettura, `pg_monitor`) o un utente con capacità di scrittura per le operazioni.                       |
| **Password**    | Password (memorizzata in forma crittografata).                                                                                |
| **SSL Mode**    | Profilo TLS: `require` crittografa, `verify-full` / `verify-ca` convalidano il certificato, `disable` per i server senza TLS. |
| **Collectors**  | Il/i [Collector](/it/documentation/agent-endpoint-security/collector-mode) in grado di raggiungere questo database.           |

## Connessione

Fai clic su **Connect** per convalidare l'accesso e le impostazioni TLS. Il database appare quindi in **Environment → Integrations** insieme alle tue altre [integrazioni](/it/documentation/integrations/overview) e puoi iniziare a interrogare l'IA su di esso nel Workspace.

## Note

* **Sola lettura per impostazione predefinita.** Auditing, stato, esplorazione dello schema e scansioni dei dati sensibili richiedono solo il ruolo `pg_monitor` in sola lettura. Fornisci un utente con capacità di scrittura solo se desideri scritture tramite **Run SQL** subordinate a conferma.
* **Nulla viene memorizzato.** Ogni operazione viene eseguita in tempo reale attraverso il Collector; i risultati tornano al tuo Workspace e nessun dato del database viene conservato dal lato Myrmex.
* **TLS.** `require` crittografa la sessione; `verify-ca` / `verify-full` convalidano anche il certificato del server. Preferisci una modalità di verifica quando gestisci il certificato del server.
