Hoje vi uma oportunidade nojenta, o administrador pode ler mensagens privadas de usuários sem sair do painel de administração.
Além disso, o administrador pode ocultar o login na conta do usuário, contornando a senha e a autenticação de dois fatores (Discourse Encrypt) para ler mensagens criptografadas.
Suspeito que não sou o único horrorizado com os direitos do administrador e a posição dos Desenvolvedores do Discourse permanece inalterada - a privacidade dos usuários não custa nada.
Gostaria de perguntar, talvez alguém tenha encontrado uma solução para este problema para tornar as capacidades do administrador mais transparentes e notificar o usuário que um administrador está autorizado em sua conta ou leu sua mensagem privada?
Não, esta ação nos logs só pode ser visualizada por administradores/moderadores.
Quero notificar os usuários se um administrador/moderador entrar nas contas de usuário ou se ler mensagens privadas de usuários.
Notificar via PM através de um bot do sistema ou mostrar estas ações de log no perfil dos usuários, por exemplo, criar um menu “logs” nas configurações da conta do usuário, onde os usuários podem visualizar esta ação (login/leitura de PM de administradores/moderadores).
Se bem me lembro, o recurso de acessibilidade de MP (Mensagem Privada) está disponível apenas para administradores. Moderadores não podem abrir mensagens de outros usuários. Portanto, a resposta simples é que você concede acesso de administrador apenas àqueles que especificamente atendem e gerenciam a própria instância do Discourse. De um ponto de vista técnico, aqueles que gerenciam sua instância podem obter acesso às MPs diretamente do banco de dados sem gerar entradas de log. Como administrador do site e do servidor em que ele está hospedado, a única maneira de impedir que os administradores obtenham esse nível de acesso é criptografar o conteúdo com uma chave que eles não possuem.
Para o nível de segurança que você procura, você basicamente precisa disso:
Eu não o usei (ainda), mas acredito que ele gera e armazena as chaves no lado do cliente de uma forma que elas não seriam acessíveis através do recurso de personificação. A chave ainda é armazenada localmente e a personificação não deve fornecer acesso a ela (pelo que sei). Esta é realmente a única maneira de proteger os dados no próprio banco de dados.
Estou muito irritado que o Discourse “código aberto” limita fortemente minhas oportunidades como administrador, ele é muito limitado nas configurações sutis deste fórum, não consigo:
desativar a ativação por e-mail
excluir emblemas padrão
alterar CSP do nginx para um onebox seguro (iplogger)
limpar todos os logs, estatísticas
instalar plugins via painel de administração
instalar sem docker com domínio (não localhost)
ver quem está online sem plugin (lmao)
instalar Discourse em um local de servidor não dos EUA
definir nome de usuário/senha para meu banco de dados ao instalar o fórum
Mas o Discourse é um produto muito bom para espionar usuários e registrar mais informações sobre a atividade dos usuários.
Na verdade, não. Você não pode ler mensagens criptografadas de outros usuários, a menos que tenha a chave deles para descriptografá-la. A criptografia/descriptografia acontece no lado do cliente, não no servidor, e as mensagens criptografadas são armazenadas criptografadas no servidor.
A capacidade dos administradores de ler mensagens pessoais é uma questão frequentemente discutida e não será alterada. Se você está preocupado com privacidade e segurança, limite estritamente quem tem acesso de administrador e faça login como administrador apenas quando precisar alterar as configurações do site ou baixar um backup.
Você parece bastante insatisfeito com o Discourse. Ele é de código aberto, então você é bem-vindo para usar um software diferente.
Tem certeza de que estava olhando para mensagens criptografadas? O usuário tem que configurá-lo e começar a usá-lo para enviar/receber mensagens. Mensagens existentes criadas antes de fazerem isso não serão criptografadas, e eles também podem optar por enviar mensagens não criptografadas.
Sinto muito por ouvir isso, mas desejo tudo de bom e boa sorte!
Acho que você está vendo mensagens não criptografadas. O administrador teria que saber a senha do usuário para descriptografar as mensagens e as senhas são armazenadas com hash PBKDF2, o que torna o processo caro e demorado para forçar os hashes. O plugin de PM criptografado tem uma função de expiração se você precisar de privacidade extra. Em qualquer caso, mesmo que a interface do administrador não tivesse a opção de leitura de PM, elas ainda estariam no banco de dados em texto simples, a menos que usassem um plugin de criptografia.
Código aberto não significa privacidade, acho que você está confundindo os termos.