Nella mia applicazione Yii2 sto provando a forzare tutti gli utenti ad essere autenticati. Se non sono già autenticati, dovrebbero essere reindirizzati alla pagina di accesso.Yii2 filtro globale/comportamento per forzare l'utente ad autenticare prima
In Yii1 ho fatto questo creando una classe che controllasse se un utente era loggato e collegava quella classe al comportamento onBeginRequest
nel mio file di configurazione principale.
// Yii 1
'behaviors' => array(
'onBeginRequest' => array(
'class' => 'application.components.RequireLogin',
)
),
Come posso ottenere lo stesso comportamento in Yii2? So che posso usare il comportamento per farlo, ma non voglio aggiungere questo comportamento al mio file di configurazione principale in modo tale che tutte le richieste vengano prima controllate per l'autenticazione.
Il metodo comportamenti di lavoro assomiglia a questo:
// Yii2
public function behaviors() {
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['login', 'error'],
'allow' => true,
],
[
'allow' => true,
'roles' => ['@'],
],
],
],
];
}
Hai provato ad aggiungere un controllo accessi al controller di base? – karlingen