autenticar o servidor xmpp (ejabberd) com o banco de dados do usuário existente (MySQL)

1

Deixe-me começar dizendo que sei muito pouco sobre o protocolo XMPP ou a comunicação em tempo real em geral. No entanto, consegui configurar um servidor ejabberd com criptografia TLS. Eu escrevi um site PHP com um sistema de usuário personalizado salvo em um banco de dados MySQL. O banco de dados para usuários é assim:

  • MyDatabase
    • UsersTable
      • uid
      • nome de usuário
      • senha (hashed)
      • sal
    • SessionsTable
      • uid CHAVE ESTRANGEIRA
      • sessionkey (hashed)

A maneira como eu autentico usuários no meu site é pela senha de combinação usual com método salt e hash it. Para as sessões em execução, coloco uma chave de sessão na sessão do navegador e a recupero no carregamento da página para autenticação.

Meu problema: Parece que o servidor XMPP tem seu próprio sistema de autenticação de usuários. Eu quero que ele use o meu existente para que os usuários logados possam inicializar o bate-papo imediatamente sem um registro e login separados. Isso também tornará muito mais fácil verificar os usuários.

Eu li em algum lugar que a autenticação do MySQL é ruim com o XMPP: Ouvi dizer que isso afeta os recursos porque, por algum motivo, tem que autenticar o usuário toda vez que ele envia uma mensagem. Se isso for verdade, qual é a melhor maneira de automatizar o registro de novos usuários? Vou descobrir a validação de um usuário, eu acho, só sei que posso passar qualquer informação necessária para um cliente xmpp logado no usuário seja username / uid ou qualquer outra coisa.

    
por Omar Saad 03.04.2016 / 01:22

0 respostas