G-G-S, 9. ~~ Web Servisin Güvenliği İçin Temel Bilgiler


Arkadaşlar Merhaba;

Bundan önceli yazımda bir web servisi oluşturup, o servis ile ilgli olan teknolojilere WSDL, DISCO, UDDI değinmiştik. Geçmişten gümüze serisinin bu dokuzuncu makalesinde, web servisinın güvenliğine biraz değineceğim.

Web servisinin belkide en önemli ve en çok özen gösterilmesi gereken konusu bence kuşkusuz güvenliktir. Sonuç olarak herkesin erişebileceği bir teknoloji ve bilgiler sözkonusu olduğundan dikkat edilmesi gerken bir konu. Güvenlik için faklı paketler sunan firmalar var ve Microsoft'un da WSE paketinde bununla ilgili WS-Security'si mevcut.

Sonuç olarak ortada bir XML belgesi ve daha önceden incelediğimiz WSDL XML belgesi içerisinde bütün bilgiler apaçık ortadadır. Genellikle SSL kullanımı yaygın olsada, .net framework 2.0 ile yeni bazı özellikler eklenmiştir.

Şifreleme ve Mesaj Tabanlı Güvenlik;

Şifreleme "Encriyption" web servisinizin bilgilerini saklayan XML metin belgesinin, sadece belirli kullanıcıların çözebileceği şekilde düzenlenmesi sürecidir, denilebilir. Şifreleme aslında çok sık bir çok projede kullandığımız bir yöntemdir e web servisleri içinde geçerlidir. Mesaj tabanlı güvenlik ise web servislerine özel olarak kullanılmaktadır.

Mesaj tabanlı güvenlik ile, çözümünü vermediğiniz kullanıcılar servisinize ulaşsa dahi bir şey yapamazlar. Gelen mesajın içeriği değiştirilse dahi buu fark edip gerekli önlemleri alabilir, talebe cevap vermeyebilirsiniz. Bu gibi durumda mesajın içerisindeki dijital imza gecersiz olur ve bu talepleri direk olarak devre dışı bırakabilirsiniz. Bu hem talep hem de cevap için geçerlidir ve yukarıda bahsettiğim WS-Security spesifikasyonunda tanımlanır.

Kimlik Denetimi ve Servis Erişim Kontrolü;

Kimlik denetimini ASP.NET sayfalarında çok sık bir şekilde kullanıyoruz. Giriş yapan kullanıcının, kendini tanıtması ve daha önceden veridği bilgileri soğrulaması gerekir. Bu bilgileri tam ve doğru olarak sunan kişi ancak istediği sayfaya erişebilir. Aynı mantık web servisleri içinde geçerlidir. Bu yöntem ile, web servisini kullanmak isteyen kişiden öncelikle kendini tanıtmasını ve Authentication işleminden geçmesini zorunlu tutabilirsiniz. Bunun haricinde, sizin belirlediğiniz sabit bir IP den erişimi sağlamasını da sağlayıp ek bir güvenlik işleminden daha geçmesini sağlayabilirsiniz.

Bu konuya çok fazla girmeyeceğim çünkü aslında bu servis mimarinin konusu dışındadır ve standar olarak ASP.NET'de uygulana yöntemler yeterlidir ;)

Geçmişten günümüze serisinde bu yazımıza kadar, genel olarak kullanılan servis mimarisi yaklaşımlarına kısa ve ya derinlemesine bakmış olduk. bu yazı web servisleri için son yazımızdır ve bundan sonra artık Windows Communication Foundation'a giriş yapacağım. Bu konuda da bir kaç yazı yazıp, temel bilgileri verdikten sonra, biraz daha ileri seviye yazılar yazmaya başlayacağım.

Bu yazılarımızda WCF ile ilgli, kullanılabilecek bütün teknolojiler ile ilgli basit örneklerden Level 300 seviyesine kadar yazıları WCF kategorisinde bulabileceksiniz, Bilginiz olsun ;)

NOT: Servis mimari gerçek anlamda çok fazla kullandığımız ancak pek de farkında olmadığımız bir konu. Onun için aslında bu seri ile şimdiye kadar ki teknolojiler hakında bilgi vermeye çalıştım. Windows Communication Foundation bu teknolojilerin tamamını bir çatı altında toplamakta, ve bir çok zor işlemi ve ayarları çok basit bir şekilde yapmamızı sağlayan bir mimari olarak .Net Framework 3.0 dan beri bizlerle birlikte. Bu makaleye kadar hep .Net Framework 2.0'ı içerisine alan konuları inceledik.

 







Blog Posts' Cloud