Zabezpieczenie pliku web.config
Tweet
sobota, 28 marzec 2009
Jak wiadomo w pliku tym znajdują się informacje konfiguracyjne sterujące pracą aplikacji,
np. definicja połączenia z bazą danych lub konfiguracja zewnętrznych serwerów SMTP.
Uzyskanie dostępu do tego pliku przez osobę niepowołaną może mieć drastyczne skutki dla
aplikacji. Oczywistym faktem staje się zabezpieczenie tych informacji poprzez zaszyfrowanie ich.
Służy do tego narzędzie „aspnet_regiis.exe” uruchamiane z konsoli Visual Studio
lub lokalizacji '%system%\Microsoft.NET\Framework\v2.0.50727', która jest zależna od wersji zainstalowanego Frameworka.
Oczywiście wszystkie wymagane informacje uzyskamy wpisując w konsoli „aspnet_regiis.exe /?”. Należy również pamiętać, by
konsolę uruchomić z prawami administratora. Do szyfrowania potrzebna jest tylko jedna opcja, której składnia przedstawia się następująco:
oraz przykładowy connectionString: Poniższy rysunek prezentuje szyfrowanie powyższego connectionString’a. Zaraz pod nim znajduje się ten sam connectionString, lecz już po zaszyfrowaniu.
Oto rezultaty: Po zaszyfrowaniu informacji aplikacja sama automatycznie w locie odszyfruje wymagane informacje. Narzędzie standardowo używa szyfrowania RSA, co daje możliwość wyeksportowania klucza i korzystania z niego na innych komputerach. Możemy również wybrać innego providera szyfrowania przez dodanie parametru „–prov”, np.:
Aby odszyfrować informacje należy użyć tego samego narzędzia z parametrem „–pdf” i analogiczną konfiguracją.
Zachęcam do przeczytania kolejnej części artykułu: Secure config, czyli zabezpieczenie pliku web.config v2
aspnet_regiis –pef „nazwa_sekcji” „pełna ścieżka do katalogu, w którym znajduje się plik Web.config”
oraz przykładowy connectionString: Poniższy rysunek prezentuje szyfrowanie powyższego connectionString’a. Zaraz pod nim znajduje się ten sam connectionString, lecz już po zaszyfrowaniu.
Oto rezultaty: Po zaszyfrowaniu informacji aplikacja sama automatycznie w locie odszyfruje wymagane informacje. Narzędzie standardowo używa szyfrowania RSA, co daje możliwość wyeksportowania klucza i korzystania z niego na innych komputerach. Możemy również wybrać innego providera szyfrowania przez dodanie parametru „–prov”, np.:
aspnet_regiis.exe –pef „nazwa_sekcji” „ścieżka” –prov DataProtectionConfigurationProvider
Aby odszyfrować informacje należy użyć tego samego narzędzia z parametrem „–pdf” i analogiczną konfiguracją.
Zachęcam do przeczytania kolejnej części artykułu: Secure config, czyli zabezpieczenie pliku web.config v2


Twitter