2009-06-04 12 views
11

Ho due domande correlate:Codifica automaticamente le sezioni di web.config dopo l'implementazione/pubblicazione?

Qual è il modo migliore per gestire la distribuzione di progetti Web tra ambienti? Ho appena scaricato il progetto di distribuzione Web .NET e sembra che funzioni come la sostituzione di alcune sezioni di web.config per adattarsi all'ambiente, il che è ottimo. L'altra cosa che volevo automatizzare era la crittografia di alcune sezioni dello web.config. C'è un modo per 'auto-encrypt' le sezioni web.config dopo una pubblicazione?

La seconda domanda è dove memorizzi le tue password in un web.config? Voglio crittografare la password ma non il resto delle appSettings. Devo creare un'area di configurazione della configurazione personalizzata web.config?

risposta

3

Hey Joel - il progetto di distribuzione Web è un po 'datato ora - controlla invece lo strumento MS Deploy (sarà spedito con vs2010, ma ora è disponibile stand-alone). Probabilmente ciò che stai chiedendo non è gestito con MSDeploy (crittografia DPAPI specifica per il computer), ma poiché lo strumento è integrato con PowerShell, puoi utilizzare la funzione di remotazione CTP3 di powershell v2 per eseguire lo script per crittografare le tue configurazioni su ogni macchina, a distanza (., che è l'unico modo è possibile accedere a DPAPI machien-locale in ogni caso)

Questo ragazzo qui fa qualcosa di simile:

http://forums.iis.net/p/1156413/1904975.aspx

-Oisin

3

Usiamo RSA Protected Configuration a criptare manualmente le sezioni del nostro web.config dopo il webapp è stata distribuita nel nuovo ambiente. Il sistema operativo protegge le chiavi per noi. Speriamo che sia utile per capire come automatizzare la tua soluzione.

2

Ora sembra che il supporto per la crittografia delle sezioni web.config sia stato aggiunto dopo la distribuzione nella versione 3.5 di Web Deploy.

https://blogs.iis.net/msdeploy/archive/2013/07/09/webdeploy-3-5-rtw.aspx

+0

Una nota importante di questo è che l'opzione built-in cripta solo l'impostazione 'connectionStrings'. Se si desidera crittografare qualsiasi altra impostazione, è necessario farlo tramite un meccanismo separato (ad esempio script PowerShell) –

Problemi correlati