Filtro / comportamento global Yii2 para forçar o usuário a se autenticar primeiro
No meu aplicativo Yii2, estou tentando forçar todos os usuários a serem autenticados. Se ainda não estiverem autenticados, deverão ser redirecionados para a página de login.
No Yii1, eu fiz isso criando uma classe que verificaria se um usuário estava conectado e anexando essa classe aoonBeginRequest
comportamento no meu arquivo de configuração principal.
// Yii 1
'behaviors' => array(
'onBeginRequest' => array(
'class' => 'application.components.RequireLogin',
)
),
Como posso obter o mesmo comportamento no Yii2? Eu sei que posso usar o comportamento para fazer isso, mas não quero adicionar esse comportamento ao meu arquivo de configuração principal para que todas as solicitações sejam verificadas primeiro quanto à autenticação.
O método de comportamentos de trabalho se parece com isso:
// Yii2
public function behaviors() {
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['login', 'error'],
'allow' => true,
],
[
'allow' => true,
'roles' => ['@'],
],
],
],
];
}