28 Haziran 2012 Perşembe

Web.Config dosyasında connectionString şifreleme


Selam yine ben! Veritabanı bağlantıları içeren bir ASP.NET projen var ama connection string şifresiyle beraber Web.Config dosyanda kabak gibi ortada! Yapman gereken projeni local IIS'e publish ettikten sonra;

Başlat => Tüm Programlar => Microsoft Visual Studio 2010 => Visual Studio Tools => Visual Studio Command Prompt (2010)

açtıktan sonra komut satırına şunu yazman;

c:\...\...>aspnet_regiis.exe -pe "connectionStrings" -app "/uygulamaadi"

Bunu Visual Studio 2008 de denedin ama bu komut orda yok haberin ola... En azından sen bulamadın.

Kendi bilgisayarında IIS üzerindeki site için bu yöntem gayet güzel çalıştı fakat server a attığında bu komut çalışmadı. Çalışmama sebebi ise yukarıdaki komutun sadece "Default Web Site" altındaki uygulamalarda (application) geçerli olması. Eğer ayrıca oluşturduğun bir site için şifreleme yapmak istiyorsan -site "site-adı-veya-id" parametresini yine -app "/uygulamaadi" ile beraber girmen gerekiyor.

Her neyse bu kadar yazdın ama yine çalıştıramadın. Şifreleme için bir yöntem daha buldun. Bunun için server da Visual Studio Command Prompt (2010) komut istemini yönetici olarak çalıştırdın ve

c:\...\...>aspnet_regiis.exe -pef  "connectionStrings" "c:/inetpub/wwwroot/site_klasor_adi" -prov DataProtectionConfigurationProvider

komutunu kullanarak şifrelemeyi başardın. İlk yazdığında olmamıştı ama bilmemne.tmp dosyası oluşturulamadı hatasından sonra komut istemini yönetici olarak çalıştırmayı akıl edebildin... Bravo... Komut istemini en başında yönetici olarak çalıştırsaydın belki bu kadar uğraşmayacaktın. (Küpe no:1)

Hiç yorum yok:

Yorum Gönder