Table of Contents

Stream Auth

O Stream Auth é um script desenvolvido em Python para autenticação e gerenciamento de transmissões ao vivo no servidor. Ele também faz o gerenciamento das chaves de transmissão dos usuários, garantindo que apenas pessoas autorizadas possam iniciar e manter transmissões.

Como Transmitir

  1. No OBS, entre nas configurações, e vá na aba Transmissão
  2. No campo serviços, selecione Personalizado…
  3. No campo servidor, preencha com rtmp://alice.dcomp.ufsj.edu.br:33000/live
  4. No campo Chave de Transmissão, preencha da seguinte forma: SEU_NOME_DE_USUARIO?password=SUA_SENHA

Arquitetura

Servidor RTMP

O módulo RTMP do NGINX é responsável por receber as transmissões ao vivo de clientes RTMP, como o OBS. O NGINX recebe a transmissão e faz uma requisição HTTP para o script, que realiza a autenticação através da chave de transmissão fornecida.

Chaves de transmissão

DEPRECADO, AGORA USAMOS APENAS O LDAP

As chaves de transmissão são criadas com JWTs através de parâmetros variáveis configurados no script. O JWT é gerado usando uma chave EC256, que pode ser alterada conforme necessário. O script para a geração de chaves está disponível no código fonte do projeto, em src/stream_auth/keys/generate_keys.sh.

Gerenciamento de usuários

O gerenciamento de usuários é feito através do LDAP.