CakePHP: Güvenlik :: allowedControllers ve Güvenlik :: allowedActions kullanarak

2 Cevap php

Ben Güvenlik :: allowedControllers ve Güvenlik :: allowedActions kullanmaya çalışıyorum. Bu yüzden daha fazla veya daha az, bu gibi bakmak bir denetleyici var

class AppController extends Controller {
    var $components = array('Security'); //other components
    //other stuff
}

class BookController extends AppController {
    function beforeFilter() {
        parent::beforeFilter();
        $this->Security->allowedControllers = array('Users');
        $this->Security->allowedActions = array('view');
        $this->Security->RequireAuth = array('search', 'results');
    }
    //other stuff
}

Eylem 'arama' sonra aramaların sonuçları 'arama sonuçlarını göstermek için bir form görüntüler. Ben bilerek blackholed için çalışıyorum.

Ben $ anlamak ne bu-> Güvenlik-> allowedControllers ve $ this-> Güvenlik-> allowedActions, ben sadece denetleyici 'Kullanıcılar' eylem 'bakış' dan POST veri almak gerekir. Bu denetleyici 'Kitaplar' eylem 'arama' dan POST verileri elde beri özellikle eylemin 'sonuç', bir kara delik beni yönlendirmelidir.

Ama bu böyle değil. Ben hatta çapraz denetleyici isteklerini yapabilir ve blackholed asla, bu yüzden ben doğru bu değişkenleri kullanarak değilim sanırım. Çapraz-denetleyici istekleri kontrol tetiklemek için doğru yolu nedir?

2 Cevap

Bu deneyin:

$this->Security->allowedFields = array('Model.fieldname', ...);

Ben forma Model.Search alanını tahmin gibi allowedFields için model olmayan alanları eklemek gerekir.