Estou desenvolvendo meu primeiro sistema com o Yii na agencia em que trabalho e para um cliente importante, eu decidi usar o Yii e coloquei o meu na reta com isso. Estou bastante satisfeito com o Yii, me entendi muito com o framework, porém tenho alguns problemas, um deles é com a autenticação.
A aplicação é dividida, tenho a parte que os usuários acessam (tabela usuario) e um módulo administrativo (usei module mesmo) /admin para alguns administradores editarem/moderarem conteúdo (tabela administrador), essas tabelas no banco são separadas por que os dados são bem distintos, preciso fazer autenticação para as duas partes de maneira independente, alguém pode me dar uma luz de como proceder?
É isso mesmo, no entanto não sei como implementar nem um tipo de autenticação que me retorne o usuário do banco de dados com todos seus dados, pois o CUserIdentity não me retorna o usuário da base, quando passo $user->name ele me retorna ‘guest’ ao invés do nome do meu usuário.
PS: Já busquei o usuário da base comparando usuário e senha no actionLogin()
Primeiro, como faço para setar um role padrão no meu usuário?
Segundo, é na verdade um problema, quando faço login pelo form o usuário é logado e a variável Yii::app()->user->isGuest é false, pois estou autenticado, no entanto quando clico em qualquer link que de um refresh na pagina Yii::app()->user->isGuest volta a ser false, como se eu tivesse feito logout,
No meu caso eu estava setando o setStateKeyPrefix() junto com o login e isso deve ser setado no controller, como eu tenho um controller base pro admin, setei nele.
A questão do role, como é uma autenticação simples e só tenho perfil de usuário e adm eu setei Yii::app()->user->isAdmin=true; assim testo esta variável pra saber se autorizo ou não acessos e ações.