C # App.Config Şifreleme Connectionstring Şifreleme Nasıl Yapılır? - Neyi Nasıl Yapsak

Post Top Ad

c# app.config connectionstring şifreleme
c# app.config connectionstring şifreleme


C# Projelerinizde App.config dosyası otomatik olarak yeni proje açıldığında gelmektedir. Bu app.config ne işe yarar? Xml tabanlı  bir takım kodları uygulamaya gömmek yerine daha kolay değiştirme sağlamak amacıyla kod tekrarını azaltan bir yapıdır. İçerisine veritabanı bağlantısı kurmak için connectionstrings oluşturulur. Bu connectionstringsi şifrelemek istersek nasıl yapabiliriz?

Bunun için öncelikli olarak bir connectionstrings oluşturmanız gerekir. Localde çalışacak bir uygulama için;
 
           
   
connectionStrings" connectionString="Data Source = Mydatabase.db;Password=123456789*;Version=3;"
      providerName="System.Data.SQLite" />
 

 
şeklinde bir veritaanı bağlantı kodu oluşturalım.
(Bunu uygulamanıza göre değiştirebilirsiniz.)

public void con()
        {
            Configuration config = ConfigurationManager.OpenExeConfiguration("uygulamaadınız.exe");
            ConnectionStringsSection section = config.GetSection("connectionStrings") as ConnectionStringsSection;
            if (!section.SectionInformation.IsProtected)
            {
                section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
            }
            config.Save();
        }
 şeklinde bir kod ile appconfig dosyasında bulunan connectionstrings verilerinin tamamını bilgisayara göre şifreleme yapabiliriz. Burada dikkat edilmesi gereken bir şey var. Yazdığınız programı build ettikten sonra çalıştırmayıp setup oluşturmanız gerekmekte. Eğer çalıştırırsanız şifreleme sizin bilgisayarınıza göre olacağı için başka bilgisayarlarda hata verecektir. Bunu önlemek için de con() u çağıracağınız yeri iyi ayarlamanız gerekmektedir.

                section.SectionInformation.UnprotectSection();

 kodu ile varolan korumayı kaldırabilirsiniz.
            SQLiteConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
            return con;

yukarıdaki kod ile bir metot oluşturup geriye dönen değere göre de veritabanına bağlanma işlemini kolayca yapabilirsiniz.




Hiç yorum yok:

Yorum Gönderme

Popüler Yayınlar

Post Bottom Ad

Pages