Installazione e messa in servizio.

ewws gira sulla Vostra propria infrastruttura, senza obbligo di cloud. Questa guida Vi conduce in tre passi dalla base di dati al server fino ai client nativi e indica i comandi concreti.

Come è costruito ewws

Tre componenti, una sequenza chiara.

ewws si compone di una base di dati PostgreSQL, del server ewws e dei client nativi. La sequenza di installazione è vincolante: prima la base di dati, poi il server, poi i client. Tutti e tre possono risiedere su un unico dispositivo o su sistemi separati.

1. PostgreSQL

La base di dati è la fonte della verità. Gira in locale, su un server dedicato o presso un fornitore gestito. Uno schema proprio per ogni mandante.

2. Server ewws

Il server si connette a PostgreSQL e mette a disposizione l’interfaccia di programmazione tramite la quale tutti i client si autenticano. Gira come servizio di sistema e porta con sé un’interfaccia web per la configurazione e l’esercizio.

3. Client (macOS, Windows, iPhone)

Le app native si connettono al server tramite il suo indirizzo. Non necessitano di driver per la base di dati né di un proprio ambiente di esecuzione.

Passo 1

Predisporre PostgreSQL.

ewws richiede PostgreSQL 16 o più recente. La base di dati va protetta internamente e messa in sicurezza prima dell’avvio produttivo con una prova di ripristino comprovata.

Tre modalità operative

In locale sullo stesso dispositivo, su un server dedicato nella rete interna, oppure presso un fornitore gestito con TLS (sslmode=require). Le offerte puramente di prova o gratuite senza garanzia operativa non sono idonee alla produzione.

Un mandante corrisponde a uno schema

Ogni mandante è uno schema PostgreSQL proprio nella stessa base di dati ewws. Un’impresa individuale utilizza public, uno studio fiduciario uno schema proprio per ogni cliente (per esempio cliente_mueller). Il codice mandante all’accesso è esattamente questo nome di schema.

Creare la base di dati e il ruolo

Come superutente PostgreSQL, creare una base di dati ewws e un ruolo di accesso ewws_app. Per l’esercizio fiduciario o multi mandante, aggiungere un ruolo ewws_admin per le migrazioni e i nuovi schemi.

CREATE ROLE ewws_app LOGIN PASSWORD '<starkes-passwort>';
CREATE DATABASE ewws OWNER ewws_app
    ENCODING 'UTF8' TEMPLATE template0;

Proteggere l’accesso

In pg_hba.conf consentire solo le reti interne concrete con scram-sha-256, mai in modo globale. Password forti e distinte per ogni ruolo. Un backup giornaliero e un ripristino testato sono obbligatori prima dell’avvio produttivo.

host  ewws  ewws_app  10.20.30.0/24  scram-sha-256
Passo 2

Installare il server ewws.

Il server viene installato come servizio di sistema nativo e si connette alla base di dati. Porta con sé il proprio ambiente di esecuzione, un’installazione Java separata non è necessaria.

Un installatore per sistema operativo

macOS: pacchetto firmato (.pkg) che predispone un servizio di sistema e un account di servizio dedicato. Linux: .deb con servizio systemd. Windows: servizio .msi. Il server è in ascolto sulla porta 8080.

sudo installer -pkg ewws-server-<version>.pkg -target /

Configurare nel browser, senza modifiche a mano

Al primo avvio il server apre una pagina di configurazione guidata nel browser (/setup). La connessione alla base di dati, il primo mandante e l’amministratore vengono inseriti, verificati e salvati, senza alcun file di configurazione da modificare a mano. Per distribuzioni automatizzate, gli stessi valori si possono impostare in anticipo come variabili d’ambiente (EWWS_DB_URL, EWWS_DB_USER, EWWS_DB_PASSWORD; per le basi di dati gestite sslmode=require nell’URL).

EWWS_DB_URL=jdbc:postgresql://db-01.internal:5432/ewws
EWWS_DB_USER=ewws_app
EWWS_DB_PASSWORD=<secret>
EWWS_DB_SCHEMA=public

Avvio e migrazione

Dopo la configurazione nel browser il server predispone automaticamente lo schema della base di dati ed è subito operativo. In seguito gira come servizio e si riavvia da solo dopo un riavvio del sistema.

Controllo Health

Una chiamata all’endpoint Health conferma che il server e la base di dati funzionano insieme. Se risponde con lo stato 200, il server è pronto per i client.

curl -sSf http://localhost:8080/api/v1/health
Passo 3

Installare i client.

L’app nativa viene installata su ogni postazione di lavoro e al primo avvio viene collegata con l’indirizzo del server, il mandante e le credenziali. L’indirizzo del server viene mostrato solo all’occorrenza, di norma è precompilato.

macOS

App notarizzata per macOS. Aprire dal download, collocare nella cartella Applicazioni, avviare. Disponibile e in uso produttivo.

iOS (iPhone, iPad)

App nativa per iPhone e iPad. Si connette al server via HTTPS, per l’accesso in mobilità di norma tramite l’edge HTTPS. Disponibile su richiesta.

Windows

App Windows nativa, fornita come pacchetto MSIX. Disponibile su richiesta.

E Linux?

Linux è una piattaforma server, non un client desktop: il server ewws gira nativamente su Linux (.deb/Docker), le postazioni usano l’app Mac, Windows o iOS.

Primo accesso

Messa in servizio e primo accesso.

Non appena PostgreSQL, il server e il client sono in funzione, Vi autenticate con l’utente amministratore e configurate mandante, utenti e ruoli.

Indirizzo del server

Nell’accesso inserire l’indirizzo del server, in esercizio locale per esempio http://localhost:8080/api/v1. Il test di connessione conferma la raggiungibilità.

Mandante e accesso

Inserire il codice mandante (lo schema PostgreSQL), l’utente amministratore e la password. La prima password viene impostata al primo accesso.

Utenti, ruoli, MFA

Nel prodotto creare utenti e ruoli, attivare la MFA e i codici di recupero. Solo dopo abilitare l’esercizio produttivo.

Esercizio

Gestire il server da soli, come i grandi.

ewws porta con sé una console operativa completa, raggiungibile nel browser sotto /admin. Mantenete il server sotto controllo, senza competenze specialistiche, e i Vostri dati restano da Voi.

Console operativa

Lo stato del server a colpo d’occhio: stato, tempo di funzionamento, memoria, mandanti, amministratori del server, licenza, versioni installate e log. Riavvio con un clic. L’accesso avviene con un account amministratore, protetto come l’interfaccia di programmazione.

open http://localhost:8080/admin

Ripristino

Se la base di dati si inceppa, il livello di ripristino resta raggiungibile sotto /recovery, indipendentemente dalla base di dati, tramite un token host. Correggere la connessione e riavviare, senza riga di comando.

open http://localhost:8080/recovery
Quando qualcosa si inceppa

Aiuto e prossimi passi.

Per domande sull’installazione la FAQ è di aiuto, oppure scrivete direttamente al supporto. Server non raggiungibile è perlopiù un tema di rete, servizio o certificato, raramente un difetto.

Domande frequenti

Trenta delle domande più frequenti su edizioni, Mac, iOS, migrazione, fiduciari, sovranità dei dati e cloud sono lì risposte.

Apri la FAQ

Due vie vincolanti, niente labirinto di hotline.

Preferiamo canali scritti perché restano tracciabili e creano una pista d'audit pulita. Per urgenze durante l'orario d'ufficio basta la casella e-mail.

Supporto