bilgiz.org

Gezgin kullanicilarin veritabani eriŞİMİ İÇİn bir başarim ve güvenlik yöntemi

  • Anahtar Kelimeler
  • 2. ÇALIŞAN SİSTEM
  • 3. YOKLAMA YERİNE TOKALAŞMA
  • Mesaj_Bulundu_ise
  • Tekrarla



  • Tarih14.10.2017
    Büyüklüğü31.1 Kb.

    Indir 31.1 Kb.


    GEZGİN KULLANICILARIN VERİTABANI ERİŞİMİ İÇİN BİR BAŞARIM VE GÜVENLİK YÖNTEMİ


    Orhan Karahasan

    Işık Üniversitesi

    Enformatik Uygulama ve Araştırma Merkezi

    orhan@isikun.edu.tr



    Prof. Dr. Selahattin Kuru

    Işık Üniversitesi

    Enformatik Uygulama ve Araştırma Merkezi

    kuru@isikun.edu.tr





    ÖZET
    Bu bildiri, özellikle gezgin kullanıcıların taşınabilir cihazlar kullanarak gerçekleştirdikleri veritabanı erişimini daha verimli ve güvenilir hale getirmek için geliştirilmiş bir başarın ve güvenlik yöntemi ortaya koymaktadır. Yöntem yoklama yerine tokalaşma temeline dayanan bir yöntemdir. Sayısal ölçümlere göre yöntem, alternatifi olan diğer bir yöntem olan yoklama yöntemine göre 1’e 10 daha verimli çalışmaktadır. Yöntem gerek ağ yükünü azaltması gerekse işlemci yükünü azaltması bakımından tercih edilmiştir. Sistem güvenliği ise kullanıcıların doğrudan veritabanına değil, veritabanının gerçek zamanlı olarak güncellenen bir küçük kopyesine erişmeleri ile artırılmıştır. Yöntem bir üniversite bilgi sistemi geliştirilmesinde uygulanmıştır.
    ABSTRACT
    This paper introduces performance and security measures for database access from mobile users. The technique used as performance measure is to use handshaking protocol instead of polling. Statistics shows that this measure reduces the junk traffic by 10 to 1. It also reduces server load for processing this traffic in the same ratio. The reduction in the traffic increases the performance. The technique used for security measure is to use a replica of the database. The mobile users can access the data from the small replica of the database, not the database itself. In other words, only the small part of the database can be accessed by mobile users. This paper introduces these solutions and an application of the solutions to a university information system.
    Anahtar Kelimeler: mobil uygulamalar , başarım artımı, uygulama entegrasyonu, güvenlik, başarım
    1. GİRİŞ
    Işık Üniversitesi’nde, içerisinde öğrenci bilgi ve kayıt sistemi, ders yönetimi sistemi, kütüphane yönetimi sistemi, elektronik ödeme sistemi ve elektronik giriş çıkış denetim sistemi bulunan tümleşik bir bilgi altyapısı geliştirilmiş ve halen kullanılmaktadır. Sistemin şu anda 2500’den fazla kullanıcısı vardır. Yakın zamanda ismi Campus ON-SMS olan ve kullanıcıların bilgi sistemindeki bilgilere cep telefonları ile erişimine imkan veren bir sistem daha geliştirilmiş ve kullanıma alınmıştır. Bu sistem kısa mesaj (SMS) tabanlı bir sistem olup sistem hakkında daha geniş bilgi bildirinin ilerleyen bölümlerinde verilecektir.
    Campus ON-SMS sisteminin de devreye alınması ile bütünleşik sistemin topyekün başarımı ve güvenliği konuları daha da önem kazanmıştır. Benzer uygulamalarda kullanılmakta olan mevcut çözümler bazı güvenlik ve başarım sorunlarını da beraberinde getirmektedir. Çevrimiçi kullanılmakta olan veritabanını taşınabilir cihazlar tarafından erişilebilir duruma getirmek çözülmesi gereken bir güvenlik sorunu ortaya çıkarmaktadır. Verinin gerek yazılımdan kaynaklanan hatalara karşı, gerek kullanıcıların hata ve kötü niyetli kullanımına karşı, gerekse kullanıcı harici gezmenlerin kötü niyetli kullanımına karşı korunması gereği geliştirme ekibini yeni çözümlerin arayışına itmiştir.
    Benzer sistemlerde veriyi sorgulamak için kullanılan yoklama (polling) veritabanı başarımını dolayısıyla bütünleşik sistemin tüm elemanlarının başarımını gözle görülür bir şekilde ve olumsuz yönde etkilemektedir. Yoklama yöntemi çoğu zaman gereksiz yere veritabanını sorguladığından hem boş yere veri akış trafiğine neden olmakta hem de işlemci üzerine gereksiz bir yük bindirmektedir.
    Bu bildiride, yukarıda sözü edilen başarım ve güvenlik sorunlarına karşı geliştirilmiş olan yöntem anlatılacaktır. Yöntem Işık Üniversitesi’ndeki uygulama üzerinde denenmiş olup bu bildirede bu deneyimin sonuçları da aktarılmıştır.

    2. ÇALIŞAN SİSTEM
    Bu bölümde, geliştirilmiş olan uygulamaların çalıştığı fiziksel yapı ve Campus ON-SMS sisteminin işlevleri ve gereksinimleri üzerinde durulacaktır. Donanım olarak sistem üç sunucu bilgisayar içermektedir.


    • Campus ON-LINE (Öğrenci Bilgi ve Kayıt Sistemi) veritabanı sunucusu: Bu sunucuda öğrencilerin akademik ve kişisel bilgilerini barındıran bir vertabanı bulunmaktadır. Bu veritabanı bütünleşik sistemin diğer elemanları tarafından da kullanılmaktadır. Campus ON-SMS sistemininin kullandığı verinin kaynağı da bu veritabanında bulunmaktadır.




    • Campus ON-SMS veritabanı sunucusu: Bu sunucuda Campus ON-LINE veritabanının küçük bir bölümünün – sadece Campus ON-SMS sisteminin kullandığı bölümü - gerçek zamanlı güncellenen bir kopyesini barındıran bir veritabanı bulunmaktadır.




    • C
      Şekil 1. Otomatik Mesaj Modu Çalışma Diyagramı

      ampus ON-SMS uygulama sunucusu: Bu sunucuda Campus ON-SMS uygulama dosyaları bulunmaktadır. Bir başka deyişle Campus ON-SMS bu sunucuda çalışmaktadır ve sistem Campus ON-SMS veritabanı sunucusunda bulunan verileri kullanarak kullanıcılardan gelen bilgi taleplerine cevap vermektedir.


    Campus ON-SMS sistemi üç farklı çalışma biçimine sahiptir: Sorgulama biçimi, otomatik bilgi biçimi ve duyuru biçimi. Bu üç çalışma biçimi şu şekilde özetlenebilir.




    • Sorgulama Biçimi: Bu çalışma biçiminde kullanıcılar erişmek istedikleri bilgiye birtakım sorgu anahtar kelimelerini sisteme kısa mesaj (SMS) ile göndererek ve sistemden yine SMS ile yanıt alarak ulaşırlar.




    • Duyuru Biçimi: Bu biçimde üniversite yetkilileri kullanıcılara SMS yolu ile toplu veya kişisel duyurular yapabilmektedir.




    • Otomatik Mesaj Biçimi: Bu biçimde kullanıcıya ait kaydadeğer bir değişiklik olduğunda sistem kullanıcıya bu bilgiyi otomatik olarak oluşturduğu bir SMS ile ulaştırmaktadır. Otomatik mesaj servisi aşağıdaki olaylardan hergangi birinin meydana gelme durumunda çalışmaktadır: Öğrencinin kayıtlı olduğu bir dersin notu belli olduğunda veya varolan bir not değiştirildiğinde bu not öğrenciye SMS ile ulaştırılır; öğrencinin kayıt durumunun danışman onayı alması veya reddedilmesi durumunda ve öğrenci için bir kayıt engeli tanımlandığı veya kaldırıldığında.



    3. YOKLAMA YERİNE TOKALAŞMA

    Bu bildiride sözü edilen başarım yöntemi; başarımı yoklama metodu kullanmak yerine tokalaşma metodu kullanarak artırma yöntemidir. Campus ON-SMS ve uygulama sunucusu arasında iletişim veritabanı seviyesinde saklanmış yordamlar (stored procedures) aracılığıyla yapılmaktadır. Uygulama ile veritabanı iletişiminde saklanmış yordamların kullanılması sistem performansını arttırmaktadır[2]. Öğrenci bilgi ve kayıt sisteminden dolayı zaten yoğun bir trafik Campus ON-LINE veritabanı üzerinde bulunmaktadır. Servis sağlayıcı diğer sistemlerinde olduğu gibi yoklama metodunu otomatik olarak oluşturulan mesajları göndermek üzere kullanma isteğindeydi. Bu ağ üzerindeki yükü arttıracağı gibi başarımı da düşürecekti. Yoklama metodunun kötü tarafı, belirli zaman araklıklarında mesaj olsun yada olmasın veritabanına sorguda bulunmaktır[3]. İstatistiklere göre; her on yoklamadan dokuzu hiçbir mesaj döndürmemekteydi. Bir başka deyişle her on yoklamadan dokuzunda öğrenciler için mesaj tablosunda oluşturulmuş bir mesaj bulunmamaktadır.


    Bu başarım düşüşünü engellemek üzere tokalaşma (handshaking) metodu olarak adlandırılan yöntem kullanılmıştır. Evreleri Şekil 1’de verilen bu metod aşağıda açıklanmıştır:
    1) Otomatik mesajla ilgili bir değişiklik kısmi veritabanında meydana geldikten sonra, bu bilgi tetikleyiciler(triggers) aracılığıyla Campus ON-SMS veritabanı sunucusuna aktarılmaktadır.

    2) Bu değişiklik Campus ON-SMS veritabanı sunucusuna aktarıldıktan sonra bu sunucu RPC (Remote Procedure Call) yöntemi ile gerekli mesaj parametreleri kullanılarak uygulama sunucusundan bilgi transferi isteğinde bulunmaktadır.

    3) Campus ON-SMS sunucusundan gelen RPC den sonra uygulama sunucusu aynı mesaj parametreleri ile veritabanı sunucusuna cevap göndermektedir.

    4) Daha sonra alınan mesaj uygulama sunucusu tarafından öğrencilere gönderilmektedir.


    Otomatik mesaj metodu için sözde program (pseudocode) bilgisi Şekil 2’ de verilmiştir[4].


    Ana_Sunucuda_Mesaj_Oluştur(id,mesaj,kullanıcıno)

    Kısmi_Veritabanına_Tetikleyicilerle_Aktar(id,mesaj,kullanıcıno)

    Mesaj_Çağırım _İsteği(id,kullanıcıno,mesajtipi)

    Mesaj_Çağırım_Cevabı(id,kullanıcıno,mesajtipi)



    Mesaj_Bulundu_ise

    Mesajı_Veritabanından_Sil(id)

    Mesajı_Telefona_Gönder(msg)

    Mesaj_Bulunamadı_ise

    İsteği_Gözardı_Et




    Şekil 2. Otomatik mesaj modu için sözde program
    4. VERİTABANI KOPYALAMA YÖNTEMİ İLE VERİ GÜVENLİĞİ
    Üçüncü şahıslarla entegre uygulama geliştirmek güvenlik anlamında bazı problemleri de beraberinde getirmektedir. Kullanılan güvenlik yöntemi, kritik öğrenci bilgilerine yetkisiz erişimi engellemeli, ve entegre edilecek uygulamanın erişilemez olduğu durumlarda Campus ON-LINE bilgi ve kayıt sistemine erişilebilirlik anlamında en ufak etkisi olmayacak şekilde tasarlanmalıydı. Bunları gerçekleştirebilmek için, öğrenci bilgi ve kayıt sisteminden ayrı bir veritabanına entegre edilecek uygulamanın kullanacağı bilgi kadarının gerçek zamanlı olarak kopyalanması esasına dayanan küçük bir kopyası oluşturuldu. Ana sunucuda aktarılması gereken bir değişiklik meydana geldiğinde; bu değişiklikler gerçek zamanlı olarak tetikleyici tabanlı RPC yöntemi ile küçük kopya veritabanına aktarılmaktadır. Bu iki veritabanı sunucusu bağlı sunucular(linked servers) olarak tanımlanmıştır. Bağlı sunucular; birbirleri üzerinde dağınık sorgular (distributed queries) çalıştırabilme, güncelleme işlemi gerçekleştirme, biribirleri üzerinde yordam çalıştırma yetkilerine sahiptirler[5].
    Veritabanı kopyalamasının(database replication) en önemli avantajı basit ve maliyetinin düşük olmasıdır. Veritabanı kopyalaması uygulaması kolay, düşük maliyetli ve kolay kurulabilen bir yöntemdir[6]. Güvenliği arttırmak için, Campus ON-SMS sunucusunun Campus ON-LINE sunucusu üzerinde RPC yapma hakkı kaldırılmıştır. Bir başka deyişle, ana öğrenci veritabanında Campus ON-SMS sunucusunun saklanmış yordamları kullanma hakkı yoktur. Campus ON-LINE veritabanı sunucusu Campus ON-SMS veritabanı sunucusunda sadece gerçek zamanlı kopyalama işlemi için RPC yapma hakkına sahiptir. Öğrenci bilgi ve kayıt sisteminde Campus ON-SMS veritabanı sunucusuna aktarılması gereken bir değişiklik meydana geldiğinde, aktarımdan görevli tetikleyici tetiklenmekte ve küçük kopya veritabanı bu bilgi ile güncellenmektedir. Kopyalama işlemi içi sözde program Şekil 3’te verilmiştir.

    Tetikleyici_Tetikle()

    Tekrarla

    Saklı_yordamı_Çağır(değişiklik)



    Başarılı Olana Kadar

    Değişikliği_Yaz(değişiklik)




    Şekil 3. Kopyalama işlemi için sözde program
    Uygulama sunucusu ile Campus ON-SMS veritabanı sunucusu arasında güvenliği arttırmak için saklı yordamlar veritabanı sunucusunda gerçeklenmiştir. Bu saklı yordamlar sadece bilgi okuyabilmektedirler. Bir başka deyişle, bilgi erişimleri sadece okuma amaçlı olmaktadır. Saklı yordam kullanılması, yordam erişim kuralları belirlemek suretiyle veritabanı güvenliğini de arttırmaktadır[7].
    Bir sorgu uygulama sunucusuna eriştikten sonra, Campus ON-SMS veritabanı sunucusunda yer alan ilgili yordam uygulama sunucusu tarafında çağırılmaktadır. Sorgulama işlemi tamamlandıktan ve sonuç saklı yordamlar aracılığıyla alındıktan sonra; sonuç öğrencilere geri gönderilmektedir. Bu işlemi temsil eden sözde program Şekil 4’te verilmiştir.


    SMS_Gönder(komut,parametreler)

    Sms_Mesajını_Yorumla(mesaj)



    Eğer Mesaj Geçerli Değil ise

    Hata_Mesajı_Gönder(hata,kullanıcıid)



    Eğer Mesaj Geçerli ise

    Tekrarla

    Veritabanına_RPC_Gönder(komut,kullanıcıid)



    Başarılı_olana_Kadar_Devam_Et

    Mesajı_Gönder(mesaj,kullanıcıid)





    Şekil 4. SMS komutu yorumlama sözde programı
    5. SONUÇLAR
    Campus ON-SMS sisteminin devreye girmesi ile birlikte kullanıcıların Üniversite Bilgi Sistemi’ndeki bilgilere erişimi için yeni bir kanal daha sunulmuş oldu. Bu sayede bilgiye erişim daha kolay, daha hızlı ve daha az maliyetli olmuştur. Son zamanlarda sıkça sözü edilen ve önemi herkes tarafından vurgulanan bilgiye her yerden ve her zaman erişebilme kavramı bu sistem ile üniversiteye sunulmuş, faydaları da kullanıcıların olumlu tepkilerinden anlaşılmıştır.
    Gezmen kullanıcıların sisteme erişimlerine olanak veren bu sistem bazı başarım ve güvenlik sorunlarını da beraberinde getirmiştir. Sistemin geliştirilmesi sırasında karşılaşılan veri güvenliği ve yüksek başarım sorunları etkili çözümler içeren özgün bir mimari ortaya konulmuştur. Başarım konusunda sistemin kullanılma yoğunluğuna da bağlı olarak değişen oranda artım sağlanmıştır. İletişim trafiği ortalamada 1’e 10 oranında düşürülmüş ve bunun da başarıma olumlu etkileri gözlenmiştir. Bunun yanı sıra önemli ve kişisel öğrenci bilgilerine yetkisiz erişim engellenmiştir. İletişim yoğunluğu oldukça yüksek olan Campus ON-LINE veritabanında sorguların gerçekleştirilmesi yerine bu veritabanının küçük bir kopyesinin tutulması ve sorguların bu küçük veritabanı üzerinde gerçekleştirilmesi öğrenci bilgi ve kayıt sisteminin bu bütünleşmeden başarım anlamında olumsuz olarak etkilenmemesini de sağlamıştır.

    KAYNAKLAR

    [1] http://campus.isikun.edu.tr

    [2] Riordan, M., Step by Step Microsoft SQL Server 2000 Programming, Microsoft Press, 2001

    [3] Szallics K., On Using the Observer Design Pattern, http://www.wohnklo.de/patterns/observer.html ,1997

    [4] www.mobilogren.com

    [5] MSDN Library, http://msdn.microsoft.com/library/default.asp?url=/library/en-us/adminsql/ad_1_server_4uuq.asp

    [6] Linthicum D., Next Generation Application Integration, http://www.tsisoft.com/resources/pdf/wp_next_gen_app_integration.pdf

    [7] Lockwood B., Using Stored Procedures to Manage SQL Server Security, http://www.sql-serverperformance.com/bl_security_sp.asp








        Ana sayfa


    Gezgin kullanicilarin veritabani eriŞİMİ İÇİn bir başarim ve güvenlik yöntemi

    Indir 31.1 Kb.