Not kaydedilen bir mvc projesi olduğunu varsayalım. Bir kullanıcın öğreyi denetle diyerek veya url değiştirererk kendine ait olmayıp görmemesi veya değiştirmemesi gereken şeylere karşı önlem almak istiyorum.
Örn: Note/Edit/55 adresine gidildiğinde o notu oluşturan kullanıcı not kendine ait olmasa da görüp, silip, değiştirebiliyor.
Önlem olarak if(Session.Currentuserid == note.userid) ise işleme devam et şeklinde kodlar akla geliyor. Ancak bu şekilde her action da böyle önlem almak gerekiyor. Bu tip şeylere karşı daha spesifik bir çözüm olup olmadığını merak ettim.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Rol de sorun yok. Admin in görmesi gereken sayfayı admin görüyor. User ın görmesi gereken sayfayı da User görüyor. Ama bir User başka User ın verisini görüyor.
Bir tane basecontroller yapip , sonra kontrol yapmak istedigin sayfalari yani controller lari bu basceontrollerden turet. Basecronteller icerisinde istedigin kontroli yapabilirsin. Boylece bu sayfadan tureyen butun sayfalarda bu islem gecerli olmus olur. Ayrica sessin kullanmaktansa claimleri bir arastirmani oneririm.
Üstte yazılmış zaten SQL değiştirip, her satıra bir sahip id si koyacaksın. Başka türlü zor. hatta olmaz. Sen aynı tabloyu bir den fazla kullanıcıya paylaştıracaksan ve bunların ayrışmasını istiyorsan o tabloya veri sahibi bilgisini koyacaksın. Yada her kullanıcıya ayrı tablo ve veya ayrı database yaratman gerekiyor :)
Örn: Note/Edit/55 adresine gidildiğinde o notu oluşturan kullanıcı not kendine ait olmasa da görüp, silip, değiştirebiliyor.
Önlem olarak if(Session.Currentuserid == note.userid) ise işleme devam et şeklinde kodlar akla geliyor. Ancak bu şekilde her action da böyle önlem almak gerekiyor. Bu tip şeylere karşı daha spesifik bir çözüm olup olmadığını merak ettim.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu mesaj bu kişi tarafından değiştirildi Hobar -- 10 Mayıs 2020; 2:59:34 >