Configurazione crittografata su hosting IIS7 condiviso che utilizza il bilanciamento del carico

2

Quando si ospita un sito su un cluster (o configurazione cloud), è necessario specificare una chiave del computer nel web.config file. Questo è necessario per mantenere sincronizzate le macchine (spesso il primo incontro è quando devi effettuare il login più volte dopo ogni uno o due caricamenti di pagina).

Alcuni dicono che è non serve affatto per crittografare il web.config sull'hosting condiviso. Altri hanno alcuni punti positivi (fai attenzione agli editori che salvano .bak file per esempio).

Oltre alle credenziali del database, la configurazione può contenere altre credenziali che possono essere di uso più diretto a un utente malintenzionato, come le credenziali di amministratore di root per l'autenticazione di moduli (utilizzata per la creazione e il ripristino di backup di database, ad esempio, dove l'utente deve essere in grado di accedere senza fare affidamento sul database).

È possibile crittografare queste sezioni con i mezzi forniti, poiché la "chiave macchina" è definita nello stesso file di configurazione? Se utilizzi questa chiave, abbiamo un bel paradigma uovo di gallina!

È hosting condiviso, quindi l'esecuzione di aspnet_regiis è fuori questione. Ho anche visto molti problemi "L'oggetto esiste già" e "Il contenitore chiave non può essere aperto" sull'host condiviso quando si tenta di ottenere la crittografia a livello di programmazione su progetti che non hanno nemmeno utilizzato il bilanciamento del carico.

La mia domanda è, è tecnicamente possibile crittografare le sezioni sul bilanciamento del carico condiviso (chiave della macchina in configurazione) che ospita con la strumentazione standard o dovrei risparmiare qualche sforzo.

    
posta Louis Somers 30.05.2012 - 01:05
fonte

1 risposta

3

La crittografia è possibile tuttavia a un certo punto è necessario disporre di una chiave privata o di una password che è necessario utilizzare per decrittografare i dati crittografati. Quindi la domanda è: dove la metti?

In IIS è possibile memorizzare una chiave privata del certificato in un archivio certificati ma in un ambiente di hosting condiviso probabilmente non si dispone di quel tipo di accesso. Inoltre, se si sta tentando di proteggere i dati dal provider di hosting, è possibile accedere facilmente alla chiave. Se si sta tentando di proteggere una password di connessione al database, essendo un provider di hosting probabilmente ospiteranno anche il database in modo che non sia di aiuto. Tuttavia, salterò sempre e cancellerò tutte le password che verrebbero inserite in un prompt di accesso memorizzato nel web.config. Ricorda che in realtà non è necessario decrittografarli, solo sale + hash nella stessa sequenza e confrontare.

È ancora possibile scegliere di crittografare i dati in quanto potrebbe non essere evidente ciò che è per l'osservatore casuale, tuttavia sarebbe banale interromperli se fossero ciò che intendevano.

Spero che ti aiuti.

    
risposta data 31.05.2012 - 14:06
fonte

Leggi altre domande sui tag