Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou tendo alguns problemas relacionado a autenticação no Zend.
O que ocorre: Num site de um dos clientes onde os usuarios fazem inscrição online para associados, as vezes acontece do administrativo efetuar esse cadastro e percebi que as vezes eles acabam cadastrando dois ou mais usuários com o mesmo email e senha. Até ai tudo bem, eu localizado e mudo a senha de um deles, porém mesmo assim o zend não aceita o login uma vez que o email é o mesmo.
Nestas linhas:
$authAdapter->setIdentity($email);
$authAdapter->setCredential($password);
Se eu alterar a ordem será que resolve?
$authAdapter->setIdentity($password);
$authAdapter->setCredential($email);>
Boa Tarde @LabDesign,
1º O Zend não trabalha com registros duplicado na tabelas de usuário! Você pode conferir na linha 44 do arquivo library/Zend/Auth/Result.php.
/**
* Failure due to identity being ambiguous.
*/
const FAILURE_IDENTITY_AMBIGUOUS = -2;
2º Para resolver a questão do usuário duplicado você pode adicionar no seu formulário uma validação, exemplo:
$validacao = new Zend_Validate_Db_RecordExists(
array(
'table' => 'usuarios',
'field' => 'email'
)
);
3º Atualize urgente sua aplicação para trabalhar com usuários únicos :D Além de ser errado, isso pode causar uma grande falha de segurança na sua aplicação.
Obrigado.
Vou atualizar sim.
Boa Tarde @LabDesign,
1º O Zend não trabalha com registros duplicado na tabelas de usuário! Você pode conferir na linha 44 do arquivo library/Zend/Auth/Result.php.
/**
* Failure due to identity being ambiguous.
*/
const FAILURE_IDENTITY_AMBIGUOUS = -2;
2º Para resolver a questão do usuário duplicado você pode adicionar no seu formulário uma validação, exemplo:
3º Atualize urgente sua aplicação para trabalhar com usuários únicos :D Além de ser errado, isso pode causar uma grande falha de segurança na sua aplicação.