|
Sayfalara Erişimi Kısıtlamak |
|
|
Öncelikle yetkisiz erişimi engellemek üzere uygulamamız üzerine yerleştireceğimiz kontrol noktalarını hatırlayalım.
CAN_MAINTAIN_CUSTOMER_LIST CAN_MAINTAIN_CUSTOMER_LIST kontrol noktası "Musteriler" sayfası ile ilgilidir. Biz sadece bu kontrol noktasından geçebilen kullanıcıların bu sayfayı görebilmesini istiyoruz. Adımlar:
Sayfayı göstermeden önce MoreMotion güncel kullanıcının sisteme girip girmediğini kontrol edecek, eğer girmemiş ise "Musteriler" sayfasını göstermeyecek ve kullanıcıyı 2. parametrede belirtilen "index" sayfasına yönlendirilecektir. Eğer kullanıcı sisteme girmiş ama CAN_MAINTAIN_CUSTOMER_LIST kontrol noktasına sahip değil ise bu durumda MoreMotion bir hata sayfası görüntüleyecek ve kullanıcının "Musteriler" sayfasını görmeye yetkisinin olmadığını belirtecektir. Eğer kullanıcı sisteme girmiş ve CAN_MAINTAIN_CUSTOMER_LIST kontrol noktasına sahip ise ancak o zaman "Musteriler" sayfasını görebilecektir. Bu nedenle, önceki bölümde oluşturduğumuz "u2" kullanıcısı bu kontrol noktasına sahiptir ve "Musteriler" sayfasını görebilir. CAN_CREATE_ORDER "GuncelSiparis" ve "Urunler" sayfaları bu kontrol noktası ile korunur. Sipariş oluşturma yetkisine sahip olmayan bir kullanıcı "GuncelSiparis" sayfasına hiçbir zaman girememelidir. O nedenle bu sayfaya erişimi engelleyelim. Adımlar:
"Urunler" sayfası ise tüm kullanıcılar tarafından görülebilir; Ancak sadece CAN_CREATE_ORDER kontrol noktasına sahip kullanıcılar güncel siparişe ürün ekleyebilir. Bu nedenle [Siparişe Ekle] komut düğmesini yetkisiz kullanıcılardan gizleyeceğiz.
Eğer XML içinde bu düğüm mevcut değilse "boolean(/mor_security_userinfo_main.checkpoints.CAN_CREATE_ORDER)" XSL ifadesi "false" döndürecek ve [Siparişe Ekle] komut düğmesi sayfa üzerinde oluşmayacaktır. Benzer ifadeler kullanarak sayfa üzerinde dilediğiniz gibi elemanları gizleyebilir veya onları işlevsiz (Disabled) durumuna getirebilirsiniz. CAN_SEE_ORDER_LIST Adımlar:
CAN_DELETE_ORDER Adımlar:
Bütün güvenlik tanımlamaları tamamlandı. Projenizi "Derle ve Dene"[Shift+F9] butonuna basıp edebilirsiniz.
|