Qual è il modo migliore per limitare l'accesso a un sito Web di sviluppo?


5

Ho un sito su cui sto lavorando che mi piacerebbe mostrare solo ad alcuni altri per ora. C'è qualcosa di sbagliato nell'impostare i nomi utente di Windows e usare l'autenticazione di windows per chiedere all'utente prima di entrare nel sito di sviluppo?

7

Ci sono diversi modi, con vari gradi di sicurezza:

  • Non metterlo su Internet - messo su una rete privata e utilizzare una VPN per accedere
  • Limitare l'accesso con Autenticazione HTTP (come suggerisci). Il lato negativo di questo è che può interferire con il sito reale, se si utilizza l'autenticazione HTTP o qualche altro tipo di autenticazione come parte dell'applicazione.
  • Limita l'accesso in base all'IP remoto. Consenti solo agli IP degli utenti a cui desideri poter accedere.
  • Utilizzare un nome host personalizzato. Avere su un IP pubblico, ma non pubblicare il nome host. Ciò significa creare una voce nel tuo file HOSTS (o configurare il tuo server DNS, se possibile) in modo che "blah.mysite.com" vada al sito, ma non è disponibile su Internet. Ovviamente si renderà accessibile il sito solo quando si utilizza quel nome host (e non l'IP).

1

Lo faccio frequentemente. Uso Hamachi per consentire loro di accedere alla mia casella di sviluppo in modo che possano vedere cosa sta succedendo. hanno accesso ad esso quando vogliono, e/o quando permetto. Quando hanno finito li sfratto dalla mia rete Hamachi e cambio la password.

Hamachi è un software VPN. Heres un link per Hamachi - AKA LogMeIn

Hamachi

hanno una versione gratuita che funziona abbastanza bene.


2

Dipende da cosa intendi per "migliore": ad esempio, intendi "più semplice" o "più sicuro"?

Il modo migliore potrebbe essere quello di averlo su una rete privata, a cui si collega tramite VPN.


1

Naturalmente, non c'è niente di sbagliato con l'autenticazione di Windows. Ci sono un paio di inconvenienti (non troppo grandi), tuttavia:

  • lo schema di autenticazione del tuo sito Web è diverso dal prodotto finale.
  • stai dando loro più accesso alla scatola di cui hanno davvero bisogno.
  • reimaging automaticamente la macchina e la ridistribuzione del sito Web è più complessa, in quanto è necessario automatizzare la creazione di account di Windows.

Vorrei suggerire due alternative:

  • di fare tutto ciò autenticazione si pensa di fare nel sito finale e assicurarsi che tutti i cercapersone richiedono l'autenticazione
  • fare un'autenticazione basata biscotto di token - inviare loro un collegamento che imposta un particolare token in un cookie e nel codice del tuo sito web aggiungi un controllo rapido per quel token prima di passare anche all'autorizzazione dell'utente regolare

1

Se non sei sposato con IIS e hai bisogno di sviluppatori per essere capace di cambiare il contenuto, prenderei in considerazione Apache + SSL + WebDav (ovvero Cartelle Web). Ciò ti consentirà di offrire una sandbox sicura in cui gli sviluppatori possono modificare e visualizzare il contenuto senza avere account utente sul server.

Questa configurazione richiede una certa conoscenza di Apache, quindi ha senso solo se si sta già utilizzando Apache o se è necessario fornire agli utenti esterni l'accesso al proprio server web.

primo collegamento utile che ho trovato sul tema: http://pascal.thivent.name/2007/08/howto-setup-apache-224-webdav-under.html


-1

Perché non appena configurato un utente NTFS e assegnare al sito web (e rimuovere l'accesso anonimo)