CakePHP: ACL ve / veya Auth

3 Cevap php

Benim web uygulaması sadece yetkinin bir seviye vardır. Ya bulunuyor Eğer giriş ya da değil. ACL bu için abartılı olur? Auth bileşen, bu durumun üstesinden gelmek için yeterince güvenli / yeterli olacaktır?

CakePHP oturum anonim kullanıcılar mı? Eğer öyleyse, o kapatmak için bir yol var? Ben kullanıcı anonim ise ben etrafında geçti edilmesi seans gerekir sanmıyorum.

3 Cevap

Eğer kullanıcılar ve diğerleri değil belli gruplara sitenin bazı bölümlerine erişimi sağlamak gerekiyorsa ACL bileşeni sadece ihtiyaç vardır. Eğer sadece birisi bir kullanıcı olup olmadığını bilmek gerekiyorsa, Auth size kapalı olacak.

Varsayılan olarak, oturumları herkes için oluşturulur. Anonim kullanıcılar için bunları kullanarak değilseniz, o) bu şekilde daha kolay çünkü onları her zaman açık ve b) bunu yapmanın yükü son derece azdır bırakmak için tamam. Eğer, go ahead ve kullanılmadığı zaman bunları kapatmak için karar verirseniz olabilir set Session.start to false in app/config/core.php.

Ayrıca Auth bileşeni ile ilgili sorunlar yaşayabilirsiniz Ancak, bir kullanıcı içeri oturum oturumu başlatmak için kod eklemek zorunda olacak. Bu Oturum bileşenin kullanımını yapar ve bunu oturumları her sayfa yük başladı beklediğini inanıyorum.

Short answer: Maybe. Long answer: seems that, for the case you explain, Auth should be enough (provided you also use Sanitize, but that's something you should also do if using ACL anyway).

Oturumları kullanım için, ben anonim kullanıcılar için bunları kullanarak Cake hakkında endişelenmenize gerek sanmıyorum, ama gerçekten kod okumadım. Her neyse, ben olmayan kullanıcılar giriş ama insanlar yapman için onları terk onları kapatmak kolay olacağını sanmıyorum.

Auth bileşeni kullanarak ince

Sterilize kütüphaneyi kullanarak tüm bu ile ilgisi yoktur. Gerekli bir şey AuthComponent ile birlikte dezenfekte eğer bu bileşen içten sterilize kullanımı yapacak, Kek bilerek. Siz kendinizi onunla bir şey yapmak gerekmez.

Eğer id, username, parola alanlarına sahip bir kullanıcı modeli kurmak ve sadece AppController yılında Auth bileşeni içerir ve 'görüntü' eylemi izin bileşeni ayarlarsanız (anasayfa IE PagesController için :: görüntüleme ('ev');) Bu başlamak gerekir.

Bakery.cakephp.org Googling veya arama bazı iyi Auth öğreticiler açmak gerekir.