Guida

Come proteggere con password un sito o una web app

Risposta rapida

Attiva la funzione password del tuo hosting: Password Protection su Vercel Pro ($20 al mese per progetto) o Netlify Pro, una policy di Cloudflare Access davanti al sito, oppure l’autenticazione HTTP basic sul tuo server. La password deve verificarla l’hosting, non il codice del sito.

Una password condivisa va bene per mostrare una bozza a un cliente. Per uno strumento che i colleghi usano ogni giorno, un login aziendale funziona meglio. Qui sotto trovi i passaggi per ogni hosting, poi la differenza tra le due cose.

Ultimo aggiornamento Scritto da TeamOnly. Facciamo un hosting con login aziendale, quindi ogni prezzo e passaggio qui sotto rimanda alle pagine del fornitore.

01Per hosting

Dove posso aggiungere una password, e quanto costa?

Tutti gli hosting più comuni lo permettono. Cambiano il piano che ti serve e se i visitatori digitano una password condivisa o accedono ciascuno con il proprio account.

Protezione con password sugli hosting più comuni, verificata il 25 ottobre 2026
HostingCome funzionaPiano necessarioCosto
VercelPassword Protection: una password per progettoPro o Enterprise. Non su Hobby$20 al mese per progetto protetto su Pro, più il piano Pro
NetlifyPassword per tutto il sito, o basic auth in un file _headersPro o Enterprise. Non su Free o PersonalPro costa $20 al mese, membri illimitati
Cloudflare AccessOgni persona riceve un PIN monouso via email, o accede con il tuo identity providerIl tuo dominio su CloudflareGratis fino a 50 utenti, poi $7 per utente al mese, fatturati annualmente
Cloudflare WorkerAutenticazione HTTP basic scritta nel WorkerQualsiasi piano WorkersGratis fino a 100.000 richieste al giorno. A pagamento da $5 al mese
Il tuo serverAutenticazione HTTP basic in nginx o ApacheNessunoGratis su un server che hai già

Verificato il 25 ottobre 2026. Fonti: Vercel Password Protection, Vercel Deployment Protection, changelog di Vercel, 9 settembre 2026, Vercel pricing, Netlify password protection, Netlify basic authentication, Netlify pricing, Cloudflare Access plans, Cloudflare one-time PIN, Cloudflare self-hosted applications, Cloudflare Workers basic auth example, Workers pricing, nginx basic authentication, Apache authentication.

02Passo dopo passo

Come attivarla, hosting per hosting

Scegli l’hosting su cui sta il tuo sito. Ognuno richiede pochi minuti.

Vercel

  1. Apri il progetto nella dashboard di Vercel e vai su Settings, poi Deployment Protection.
  2. In Password Protection, attiva l’interruttore.
  3. Scegli cosa proteggere. Standard Protection lascia aperto il dominio di produzione, quindi scegli All Deployments per coprire anche l’indirizzo principale.
  4. Inserisci una password e seleziona Save. I visitatori la digitano una volta per ogni pubblicazione, e un cookie la ricorda.

Quanto costa Solo piano Pro: $20 al mese per ogni progetto protetto. Inclusa in Enterprise, non disponibile su Hobby.

L’opzione gratuita su tutti i piani è Vercel Authentication, che ora copre anche la produzione. I visitatori accedono con un account Vercel che ha accesso al progetto, quindi ogni collega ne deve avere uno.

Netlify

  1. Apri il sito e vai su Project configuration, General, Visitor access, Password Protection.
  2. Seleziona Configure Password Protection, poi Basic password protection, e inserisci la password.
  3. Seleziona All deploys così è coperto il sito online oltre alle anteprime, poi Save.
  4. Sui piani Pro più recenti basati sui crediti, la stessa impostazione è in Visitor access, Project visibility: scegli Password.
/*  Basic-Auth: dana:a-long-password sam:another-long-password

Quanto costa Piano Pro ($20 al mese, membri illimitati) o Enterprise. Non disponibile su Free o Personal.

Per un nome utente e una password su una parte del sito, Pro ed Enterprise accettano anche una regola Basic-Auth in un file _headers, come quella qui sotto. Netlify fa notare che con la basic auth non c’è modo di uscire.

Cloudflare Access

  1. Il tuo dominio deve essere su Cloudflare. Nella dashboard, vai su Zero Trust, Integrations, Identity providers, e aggiungi One-time PIN.
  2. Vai su Access controls, Applications, seleziona Create new application, poi Self-hosted and private, e aggiungi l’hostname del tuo sito.
  3. Aggiungi una policy Allow. Usa Emails ending in con @yourcompany.com per tutta l’azienda, o Emails per persone specifiche. Access blocca tutti gli altri per impostazione predefinita.
  4. Seleziona Create. I visitatori digitano la loro email, ricevono un PIN valido una sola volta per 10 minuti, ed entrano.

Quanto costa Gratis fino a 50 utenti, poi $7 per utente al mese, fatturati annualmente.

Non è una password condivisa: ogni persona dimostra di leggere la propria casella email, quindi puoi vedere e rimuovere le persone una per una.

Un Cloudflare Worker con basic auth

  1. Parti dall’esempio di basic auth di Cloudflare per i Workers. Chiede al browser nome utente e password e li confronta in un modo che non fa trapelare la password attraverso i tempi di risposta.
  2. Salva la password come segreto, non nel codice, con il comando qui sotto.
  3. Servilo solo in HTTPS. Altrimenti la basic auth invia la password in chiaro.
npx wrangler secret put PASSWORD

Quanto costa Workers Free copre 100.000 richieste al giorno. Workers Paid parte da $5 al mese.

Cloudflare indica che il suo esempio non è adatto alla produzione e consiglia invece Cloudflare Access.

Il tuo server

  1. Installa lo strumento htpasswd (pacchetto apache2-utils su Debian e Ubuntu, httpd-tools su Red Hat) e crea un file di password con una riga per persona.
  2. In nginx, aggiungi auth_basic e auth_basic_user_file al sito, come qui sotto. In Apache, usa AuthType Basic, AuthUserFile e Require valid-user.
  3. Tieni il file di password fuori dalla cartella web, e usa HTTPS. La documentazione di Apache avverte che la basic auth invia la password in chiaro.
sudo htpasswd -c /etc/apache2/.htpasswd dana

# nginx
location / {
    auth_basic           "Staff only";
    auth_basic_user_file /etc/apache2/.htpasswd;
}

Quanto costa Gratis su un server che hai già.

La basic auth può avere una password diversa per ogni persona, che è meglio di una sola password condivisa. Però aggiungi e togli le persone a mano sul server.

03Password condivisa o login

Quando basta una password?

Una password condivisa va bene per

  • Una bozza o una demo per un cliente o qualcuno fuori dall’azienda, per pochi giorni.
  • Una copia di staging di un sito pubblico che non vuoi ancora far indicizzare.
  • Qualsiasi cosa in cui non conta chi l’ha vista, ma solo che non l’abbiano vista sconosciuti.

04A confronto

Password condivisa o login aziendale

Login aziendale vuol dire che ogni persona accede con l’account di lavoro che l’azienda le dà già: Google, Microsoft, o un codice inviato alla sua email aziendale.

Una password condivisa a confronto con un login aziendale per uno strumento interno
DomandaPassword condivisaLogin aziendale
Chi entraChiunque abbia la password, ovunque l’abbia presaSolo chi ha un account sul dominio email della tua azienda
Togliere una personaCambia la password e manda quella nuova a tutti gli altriToglila dalla lista, o disattiva il suo account di lavoro quando se ne va
Sapere chi l’ha usataNo. Per l’app sono tutti ugualiSì. L’app riceve nome ed email di ogni persona
Se viene diffusaFunziona per chiunque la trovi, in una chat, in un’email o in uno screenshotNon c’è niente da diffondere. A uno sconosciuto servirebbe un account funzionante della tua azienda
Costo$20 al mese per progetto su Vercel Pro. Un piano Pro su Netlify. Gratis sul tuo serverGratis fino a 50 utenti su Cloudflare Access, se lo configuri tu. $19 al mese su TeamOnly, hosting incluso

05Login aziendale, già incluso

Come mettere un’app interna dietro il login aziendale con TeamOnly

Se il sito è in realtà uno strumento interno, puoi fare a meno della password. TeamOnly ospita l’app e verifica il login aziendale prima che se ne carichi qualsiasi parte.

  1. Inizia gratis con la tua email aziendale

    Provalo gratis per 14 giorni, senza carta. Poi Builder costa $19 al mese per un creatore e fino a tre app. Il dominio email della tua azienda diventa la porta d’ingresso.

  2. Esegui npx teamonly init nel tuo progetto

    Aggiunge le istruzioni per Claude Code e Cursor, e la piccola libreria che la tua app usa per la persona che ha fatto l’accesso, il database e i file.

  3. Accedi, poi pubblica

    Esegui npx teamonly login una volta, poi npx teamonly deploy. Ottieni un link come expenses.acme.teamonly.app.

  4. Manda il link

    I colleghi accedono con il loro account Google o Microsoft di lavoro, o con un codice inviato alla loro email aziendale. Puoi limitarlo a persone specifiche con npx teamonly access only dana@acme.com.

06FAQ

Le domande più frequenti

Tutte le domande e risposte

Come proteggo un sito con password gratis?

Sul tuo server, l’autenticazione HTTP basic non costa nulla. Su Cloudflare, Access è gratuito fino a 50 utenti e può mandare a ogni persona un PIN monouso via email, ma il tuo dominio deve essere su Cloudflare. Il piano Hobby di Vercel e i piani Free e Personal di Netlify non offrono la protezione con password.

Quanto costa la protezione con password di Vercel?

Sul piano Pro costa $20 al mese per ogni progetto che proteggi, in aggiunta al piano Pro. È inclusa in Enterprise e non è disponibile su Hobby. Vercel Authentication è gratuita su tutti i piani, ma i visitatori hanno bisogno di un account Vercel con accesso al progetto.

Netlify ha la protezione con password sul piano gratuito?

No. La documentazione di Netlify dice che la protezione con password non è disponibile sui piani Free e Personal. C’è su Pro, che costa $20 al mese con membri illimitati, e su Enterprise.

Posso proteggere con password un’app React?

Sì, ma non da dentro React. Tutto quello che sta nel codice React viene inviato al browser, quindi un controllo della password lì si può leggere e aggirare. Metti la password sull’hosting (Vercel, Netlify, Cloudflare o il tuo server), così non si carica nulla finché non viene inserita.

Una password condivisa è abbastanza sicura per uno strumento interno?

Tiene fuori gli sconosciuti e i motori di ricerca. Non ti dice chi usa lo strumento, e non puoi togliere l’accesso a una persona senza cambiarlo per tutti. Per uno strumento che i colleghi usano ogni giorno, un login con l’account di lavoro di ciascuno è la scelta più sicura.

Posso proteggere con password un sito pubblico con TeamOnly?

No. TeamOnly è solo per app interne a cui i colleghi accedono con il loro account di lavoro. I siti pubblici non sono ammessi. Per un sito pubblico con password, usa uno degli hosting di questa pagina.

Accesso anticipato

Niente password condivisa per gli strumenti del tuo team

Builder costa $19 al mese. I colleghi accedono con il loro account di lavoro, e nessun altro entra.

Prova gratis per 14 giorniOppure abbonati subito

Nessuna carta per la prova. Poi da $19 al mese, disdici quando vuoi.

Non sei pronto? Ricevi aggiornamenti

Usa la tua email aziendale. Scriviamo di rado, e solo quando c’è una novità che vale la pena.

Le domande vanno a hello@teamonly.dev, e risponde una persona.