Todos os produtos
Search
Central de documentação

ApsaraMQ for MQTT:Autenticação baseada em token

Última atualização: Jun 28, 2026

ApsaraMQ for MQTT usa autenticação baseada em token para oferecer controle de acesso temporário e granular a um único cliente e recurso. O servidor de aplicativos solicita tokens ao broker MQTT e os distribui aos clientes gerenciados pelo sistema de contas local.

Termos

Termo

Descrição

Token (credencial temporária)

Credencial temporária emitida pelo ApsaraMQ for MQTT que concede a um único cliente acesso a recursos específicos.

Servidor de aplicativos

Servidor responsável por gerenciar contas locais e solicitar ou gerenciar tokens para clientes MQTT.

Broker do ApsaraMQ for MQTT

Servidor do ApsaraMQ for MQTT que autentica permissões, processa solicitações de token dos servidores de aplicativos e envia e recebe mensagens.

Processo de autenticação

A autenticação baseada em token exige mais configuração que a autenticação por assinatura. Implante o servidor de aplicativos conforme ilustrado na figura a seguir e garanta que o cliente MQTT interaja com ele para obter e renovar tokens durante a inicialização.

Figura 1. Processo de autenticação token_process_new

O processo de autenticação funciona da seguinte maneira:

  1. O cliente MQTT inicia e se conecta ao servidor de aplicativos para autenticação.

  2. O cliente solicita permissões para um tópico específico ao servidor de aplicativos.

  3. O servidor de aplicativos verifica as permissões do cliente para o tópico. Se a verificação for bem-sucedida, ele solicita um token ao broker do ApsaraMQ for MQTT.

  4. O broker do ApsaraMQ for MQTT valida a solicitação e retorna o token.

  5. O servidor de aplicativos armazena o token em cache e o associa às permissões concedidas. O uso de cache oferece os seguintes benefícios:

    • Se o cliente se reconectar com as mesmas permissões, o servidor retorna o token em cache em vez de solicitar um novo.

    • Se o broker estiver temporariamente indisponível, o servidor retorna o token em cache para recuperação de desastres local.

  6. O cliente inclui o token nos parâmetros de conexão e se conecta ao broker. Após a autenticação bem-sucedida, o cliente pode enviar e receber mensagens.

  7. O cliente envia e recebe mensagens. Quando o broker detecta um token expirado, desconecta o cliente. Nesse caso, o cliente deve solicitar um novo token.

Requisitos do cliente

  • Obtenha o token e seu tempo de expiração do servidor de aplicativos para calcular quando renovar o token.

  • Forneça o token no campo Password sempre que estabelecer uma conexão.

  • Monitore o período de validade do token. Se o token expirar, o broker desconectará o cliente.

  • Configure o cliente para ouvir notificações de expiração de token do broker. Como a entrega não é garantida, utilize essas notificações apenas para solução de problemas.

  • Armazene o token persistentemente para evitar solicitar o mesmo token a cada reconexão. Se muitos clientes se reconectarem simultaneamente sem tokens em cache, o servidor de aplicativos poderá encerrar inesperadamente.

  • Para atualizar um token, reconecte-se com um novo token ou use o tópico definido pelo sistema para atualizá-lo dinamicamente. Se optar por atualizações dinâmicas, atualize também a configuração local para as próximas inicializações de conexão.

Requisitos do servidor de aplicativos

  • Autentique cada cliente MQTT para impedir solicitações de token com identidades falsificadas.

  • Mantenha o registro das associações entre tokens e clientes, permissões concedidas e períodos de validade para evitar solicitações duplicadas de token do mesmo cliente.

  • Retorne o token com suas permissões e tempo de expiração para que o cliente possa renovar o token antes da expiração.

  • Implemente recuperação de desastres local para garantir a continuidade dos negócios quando o broker estiver temporariamente indisponível.

Operações de API

As seguintes operações de API implementam a autenticação baseada em token: