ASP.NET Impersonation / Kimliğe bürünme

Genelde uygulamaları servera “sql authentication” kullanarak bağlantı kurdururuz. Ama bazen Sql Aut değilde Windows authentication olarak bağlanmasını isteyebilirsiniz. (Aynı benim gibi)Diyelim ki bir domain yapımız var. Ve şirket içi/dışı birçok uygulamamız var. Uygulamarın servera bağlanacakları userı tek tek her serverlarda oluşturmak yerine daha merkezi bir yönetim için active directoryde yarattığımız kullanıcılar ile Sql Servera bağlantı kurabiliriz.

Bunun için yapmamız gereken impersonation işlemi uygulamaktır.
Impersonation kelime olarak taklit etme, canlandırma anlamına gelmektedir.
Bizimde yapacağımız uygulamayı başka bir kimliğe büründürdükten sonra sql servera bağlantı kurdurmaktır.

Web uygulamamızın web.config dosyasını açıp <system.web> düğümünü buluyoruz.
Ve şu satırı içine ekliyoruz.

<identity impersonate="true" userName="DOMAIN\KULLANICIADI" password="ŞİFRE" />

 

Artık uygulamamız burada belirttiğimiz kullanıcı adı ve şifreyle login olacaktır. Tabi Sql servera bağlanmak için yazacağımız connection string trusted olmalı.

Data Source=SERVERADI; Initial Catalog=DATABASEADI; Integrated Security=SSPI;

Yaptığımız işlemi test etmek içinde aşağıdaki kodu boş bir .aspx sayfasında çalıştırabilirsiniz.

Response.Write("Bağlanan Kullanıcı: " + WindowsIdentity.GetCurrent().Name);

Bir başka yazıda görüşmek dileğiyle.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s