• Sonuç bulunamadı

Kaynak etmen hedef etmene mesaj sendMessage ça ile yollar. Mesaj gönderme fonksiyonunun parametreleri hedef etmene bir i aretçi ve mesaj n kendisidir. Mesaj kaynak etmen sunucusuna geldi inde hedef etmenin yeri, mesaj paketi içinde yer alan bilgilerden saptan r, sonra hedef etmenin üzerinde çal etmen sunucusuna mesaj gönderim iste i bildirilir. Ancak, bu ad mda, gönderim iste i içinde yerel etmen sunucusunun kimlik denetimi sonucu edindi i bilet de yer al r. Hedef etmen sunucusu gelen istek içindeki bileti “Güvenlik Yöneticisi” düzende çal an etmen sunucusuna onaylat r; e er bilet geçerli bir bilet ise hedef etmen sunucu mesaj al etmenin giri kuyru una b rak r ve etmeni uyar r. Bilet onaylanamazsa istek gözard edilir ve kaynak sunucuya hata dönülür. Kaynak sunucu ilgili mesaj n gönderilemedi i bilgisini saklar ve kaynak etmen mesaj n akibetini sorgulad nda ona bu bilgiyi döner.

Etmen sunucusu mesaj paketini al etmen sunucusuna iletti i zaman, daha önce hangi numaral pakatleri iletti i bilgisini de kaydeder. Herhangi bir yan t mesaj paketi geldi inde, bu yan n daha önce gönderilmi bir mesaja ait olup olmad

kontrolünü de yapar. Böylece sistemde sahte yan t paketleri olu turarak etmenlerin yanl davrani lara yönlendirebilecek durumlardan da sak lm olunur.

Gözleyici düzende çal an GES hakk nda bilgi verilirken, yerden ba ms z mesajla ma olana sunmak için güncel etmen-yer bilgisinin sa lanmas için bütün GES sunucular üzerlerinde aktif yada pasif olan etmen kimlik bilgilerini GGES’e iletildi i aç klanm . GGES, en güncel etmen-yer bilgisini bar nd r ve istendi inde di er etmen sunucular na bu bilgiyi iletir. GGES ler mesajla ma yap n temelini olu tururlar. Süreklili i sa lamak için bir den çok GGES sunucu ortakl k ili kisi içince çal abilir. Ortakl klar dü üm yöneticisi taraf ndan belirlenir. Ayr ca bir GES sunucu için birden çok GGES tan yap labilir ancak ayn anda sadece bir GGES kullan labilir. GES sunucu aktif GGES’e eri emez ise hemen tan ml olan di er bir GGES’e eri meyi dener. Bu, çal an bir GGES bulununcaya kadar devam eder.

9. GES GÜVENL K POL KALARI VE YÖNET

Hareketli etmenlerin uygulama alanlar n geni lemesi, beklenilen güvenlik ihtiyaçlar na cevap verecek yap lar n geli tirilmesi ile mümkündür. Di er önemli bir konu ise bu güvenlik ihtiyaçlar n de ken olmas r. Bugün için kullan lmas nda sak nca olmayan bir kayna n kullan , de en çevresel faktörler nedeniyle ileride sak ncal olabilir. O an geldi inde bu de ikli e uyum sa lamak mümkün oldu u kadar esnek ve kolay olmal r.

Politika tan n temelinde yetkilendirme söz konusudur. Hareketli etmen sistemlerini dü ündü ümüzde yetki verilecek birimler aktiviteler olarak de erlendirilebilir. Örne in bir etmenin göç etmesi, mesajla mas , dü üm diskine yazmas birer aktivitedir. Yetkilendirme söz konusu oldu unda yetki verilecek birimleri de tan mlamak gerekmektedir. Hareketli etmen sistemlerinde yetki verilecek birimler, etmenler ve etmen sunucular olarak tan mlanabilir.

Buna göre politika, etmen yada etmen sunucular na verilecek olan yetkilendirme kurallar n bütünüdür. Temel amac , de en güvenlik ihtiyaçlar na kolay cevap verebilmek, yönetimi kolayla rmak ve çevresel de ikliklere uyum sa lamay

zland rmakt r.

Hareketli bir etmen sistemi, sa lad esnek fonksiyonlar n yan nda, çevresel de ikliklere de uyum sa lamay kolayla racak mekanizmalara sahip olmal r. Bunu yaparken, mümkün oldu u kadar etmenin yeniden programlanmas gerekmemeli, ve çal an sistemde dinamik de ikliklere izin vermelidir.

Sisteme girmi ve güvenilir oldu u kabul edilmi herhangi bir etmenin ta nd ortam üzerinde zarar verici etkilerinin olmas hala muhtemeldir. Etmen, diskten okuma, yazma ya da silme i lemleri ile dü üm kaynaklar na zarar verebilir, a ba lant lar olu turularak güvenlik için riskli olabilecek arka kap lar olu turabilir veya dü üm üzerinde eri ilmesi istenmeyen sistem de kenlerine eri ebilir.

Etmen sistemlerinde politika kullan ile ilgili olarak baz çal malar n yap ld görülmektedir. Örne in Gallery[29] etmenlere yetkilerin verildi i ve hangi etmenin hangi platformda çal abilece inin tan mland bir çat (framework) olu turmu tur. [30] referansl çal mada yazarlar sadece etmen hareketlili i için politika tabanl bir

sistem olu turmaya çal lard r. [31] referansl çal mada ise yazarlar, dü ümlerin etmenlere, geçmi teki davran lar na bakarak yetki verebildi i bir yetkilendirme sistemi üzerinde çal lard r. “Proof Carriying Code” [34] yönteminde ise etmen programc n etmenin belirli bir güvenlik politikas na uydu unu göstermesi istenir.

GES mimarisi, etmen ve dü ümlere politikalar atanarak, etmen aktivitelerinin rland labilmesine olanak sa lar. Dü ümler de, dü üm politikalar olu turularak korunur. Sistem bu deste i dinamik olarak vermektedir, dolay ile sistem aktif iken politikalar de tirmek mümkündür. Bu çal ma modeli ile de ebilen çevresel

artlara göre etmenleri yeniden programlama gereksinimi de ortadan kalkm olur.

9.1 Java Dilinin Güvenlik Yönetimi

JAVA dili, her uygulama için belirli kontrollerin yap larak baz JAVA ça lar n tland labilece i bir mekanizma sunmaktad r. Her uygulama için “Java.lang.SecurityManager” s ndan türeyen yeni bir s f yaz lmas na olanak verir. Tehlikeli olabilecek herhangi bir aktivite gerçekle meden önce olu turulan “Security Manager” ‘a yönlendirilir ve e er buradan onay al rsa, i lem yerine getirilir. JAVA n n varsay lan Security Manager s hangi s flar n hangi tür yetkilere izinli oldu unu bir dosyadan okuyarak anlar. Kontrol edilecek her i lem için yaz lan bu s f içine “Check” ismi ile ba layan bir metod yaz lmal r. Örne in bu s f içinde tan mlanan “CheckRead” metodu ça yapan s n dosya okuma izni olup olmad , ya da “CheckWrite” metodu dosyaya yazma izni olup olmad kontrol etmek için kullan r. JAVA, a daki ça lar için Security Manager s içinde “Check” ile ba layan metod yaz na izin verir. Bu, ayn zamanda kontrol edilebilen ça listesini de göstermektedir.

- Belirli bir dü ümden, bir TCP portu üzerinden soket ba lant dinleme yada kabul etme

- Bir ipli e müdahale (önceli ini de tirme gibi)

- Bir dü üme, bir TCP portu üzerinden soket ba lant iste i gönderme

- Yeni bir class yükleyicisi olu turma

- Bir dosyay silme

- Bir dosyaya yazma

- Sistem de kenlerini okuma ya da silme

- Uygulamay sona erdirme

JAVA dili tehlikeli olabilecek iki tür kontrolün yap lmas na olanak sa lamamaktad r.

- Belle i a kullanarak dü üme zarar verme

- Çok say da iplik olu turarak dü üme zarar verme

Her uygulama için sadece bir “JAVA Security Manager” tan mlanabilir. Dolay ile yaz lacak Security Manager s esnek politika yönetimini destekleyecek ekilde tasarlanmal r. ekil 9.1.1 JAVA n n “Security Manager” çal ma modelini göstermektedir.