Plugin de Tópicos Privados

:information_source: Resumo Tópicos Privados Habilita tópicos privados em uma categoria regular
:hammer_and_wrench: Link do Repositório GitHub - communiteq/discourse-private-topics
:open_book: Guia de Instalação Como instalar plugins no Discourse

Funcionalidades

Este plugin permite adicionar uma configuração de segurança extra às categorias, para que os usuários só possam acessar seus próprios tópicos. Você também pode designar um ou mais grupos que podem ver todos os tópicos na categoria. Isso é tipicamente usado para fornecer suporte privado dentro de uma comunidade pública.

Racional

Estávamos procurando uma maneira mais integrada de fornecer suporte aos clientes da Communiteq sem ter que criar milhares de categorias. Também queríamos evitar as Caixas de Entrada de Grupo porque elas parecem muito improvisadas e, por padrão, você recebe uma bolha de “nova MP” toda vez que alguém posta algo em qualquer caixa de entrada de grupo.

Eu escrevi anteriormente sobre essa ideia aqui.

Configuração

Após habilitar o plugin, vá para as configurações de segurança da sua categoria.

:warning: CERTIFIQUE-SE DE QUE NÃO ESTÁ ACESSÍVEL PARA “TODOS”. :warning:
Se precisar ser amplamente acessível, defina isso para trust_level_0.

Configurações

Existem algumas configurações globais do site também:

  • private topics permitted groups: designa grupos cujos membros têm postagens consistentemente acessíveis. Você pode usar isso para que as postagens da equipe ou da equipe de suporte não estejam sujeitas a serem inacessíveis, mesmo quando estiverem em uma categoria privada. As postagens do usuário padrão do sistema também são sempre exibidas. Você deve garantir que as postagens introdutórias da categoria sejam do usuário padrão do sistema ou de um usuário neste grupo, se quiser que elas sejam exibidas.

  • private topics admin sees all: quando habilitado, os usuários administradores podem acessar todos os tópicos, mesmo quando estão em uma categoria privada. Desabilite isso se quiser ocultar dados confidenciais de olhares acidentais.

Ressalvas

O plugin filtra tópicos de listas de tópicos, fluxo de postagens, pesquisa, resumo do usuário, atividade do usuário, página não encontrada, notificações de acompanhamento e bruto.

Os tópicos são incluídos em distintivos, mas os distintivos não são concedidos para categorias não públicas, portanto, você deve remover everyone dos grupos de segurança da categoria e adicionar trust_level_1 em vez disso.

Este plugin é novo e ainda não foi testado extensivamente.
Possíveis “vazamentos” são:

  • barramento de mensagens (às vezes um “há um tópico novo ou atualizado” aparece e depois desaparece)

A Fazer / Roteiro

  • ter um banner de categoria que explique que é seguro postar coisas mais ou menos confidenciais na categoria.
45 curtidas

Ótimo trabalho, Richard!

2 curtidas

Uau, isso é incrível. Ótimo trabalho!

3 curtidas

Uma pequena observação: parece que mesmo os administradores não conseguem ver essas respostas se staff ou admins não forem especificados nos grupos. Isso é intencional?

Acabei de criar duas categorias de teste, uma onde o admin foi especificado nos grupos e outra onde não foi. Mover o tópico de uma categoria para outra significa que perdi a visibilidade sobre o referido tópico. O nome do tópico é vazado pelo botão Excluir Categoria, que mostra e nomeia o tópico ainda presente, o que impede a exclusão.

1 curtida

Sim, eu intencionalmente não fiz nenhum esforço para tratar admin de forma especial (no espírito de isto e isto), pois é trivial adicionar o grupo e é realmente útil nos testes quando o administrador está sujeito às regras de segurança regulares.

Por outro lado, eu também não fiz nenhum esforço para fechar quaisquer “vazamentos” para usuários administradores, especialmente porque isso poderia causar problemas ao administrar o fórum.

É uma boa observação, no entanto, e eu a tornarei explícita na postagem inicial deste tópico.

2 curtidas

Há alguma possibilidade de listar tópicos para administradores na visualização de categoria, mesmo que o nome esteja oculto?

Você poderia, por favor, elaborar? Não tenho certeza se entendi o que você quer dizer.

É bastante sem precedentes que haja conteúdo que os administradores não possam ver por padrão.

Se você não quiser exibir esses tópicos para os administradores, a menos que o grupo deles seja explicitamente nomeado, podemos pelo menos incluir algo na visualização do tópico informando que há tópicos privados presentes que eles não poderão ver? Pode ser qualquer coisa, desde mostrar os nomes dos tópicos na lista de tópicos, mas impedir que os tópicos em si sejam abertos (o último é o caso agora, os links simplesmente não funcionam), até incluir um aviso no topo de uma categoria para informar ao administrador que os tópicos privados estão ativados, mas eles atualmente não têm permissão para visualizá-los.

1 curtida

Entendi, obrigado pela explicação.

Adicionarei uma configuração de site no início da próxima semana que ignorará todos os filtros para usuários administradores.

Adicionei uma configuração de grupos permitidos para tópicos privados para designar grupos cujos membros têm postagens consistentemente visíveis. Você pode usá-la para que as postagens da equipe ou do suporte não fiquem inacessíveis, mesmo quando estiverem em uma categoria privada. As postagens do usuário padrão do sistema também são sempre exibidas. Você deve garantir que as postagens introdutórias da categoria sejam do usuário padrão do sistema ou de um usuário neste grupo.

Também tornei a funcionalidade de que os administradores podem ver tudo como padrão. Para reverter ao comportamento antigo, você pode desativar administrador vê todos os tópicos privados. @stephen

1 curtida

Muito obrigado por este plugin @RGJ - será muito útil para nossa comunidade.

Se entendi corretamente; os usuários estão seguros para criar tópicos nesta categoria com informações confidenciais também?

1 curtida

Ele foi projetado para entregar o mesmo nível de confidencialidade que uma caixa de entrada de grupo, ou seja, apenas o autor do tópico e um grupo definido poderão acessar os tópicos sob seu regime, além de administradores e qualquer pessoa que tenha (obtido) acesso ao banco de dados.

Por favor, note que o plugin tem 4 dias e ainda está rotulado como ‘beta’, então ele ainda não foi extensivamente testado em campo.

Talvez eu devesse colocar uma recompensa para que possamos levá-lo a um nível de teste de batalha mais rapidamente: quem encontrar uma maneira de contorná-lo e puder acessar um tópico como um usuário regular não autorizado receberá 2 meses de hospedagem gratuita do Communiteq. Um mês para vazamento parcial, como o título de um tópico.

5 curtidas

A única coisa que vi até agora (e é muito leve) é no resumo do perfil do usuário, onde você pode ver que o usuário criou um tópico em uma dessas categorias através de Categorias Principais. Nenhum dos links (para categoria ou contagem) expõe os tópicos, no entanto.

Editar: Na verdade, encontrei um, mas é através de um plugin oficial em vez do core. discourse-follow vazará o título e o URL de tópicos privados.

2 curtidas

Obrigado!!!
Isso foi resolvido agora.

2 curtidas

Encontrei mais dois vazamentos de título/URL, um está relacionado ao outro.

Passos foram:

  • Tópico é criado pelo usuário 1 em uma categoria diferente e interagido pelo usuário 2, o que define esse tópico como observado.
  • Tópico é movido para a categoria de tópicos privados
  • Tópico vê mais atividade que aciona a notificação do tópico para o usuário 2, apesar de ele não conseguir acessá-lo. (vazamento a, menor)
  • Notificação leva à mensagem usual “Oops! Essa página não existe ou é privada.” mostrando vários títulos de tópicos protegidos no bloco Recentes para o usuário 2. (vazamento b, um pouco mais grave)

3 curtidas

Obrigado @Stephen, você é demais!!!

Corrigi os tópicos recentes na página não encontrada. Agora ela excluirá todos os tópicos em categorias privadas.

2 curtidas

Obrigado @RGJ

O Discourse realmente precisava disso. O recurso Criar/Responder, inerente à maioria das plataformas de fórum, era verdadeiramente necessário em sua estrutura integral. Estendo minha gratidão por seus esforços diligentes nesta questão.

1 curtida

Olá,

Eu estava testando este plugin para minha comunidade e, quando eu e alguns outros membros tentamos testá-lo, ele não pareceu funcionar como pretendido. As postagens criadas por membros normais aparecem para todos os outros e não apenas para os grupos privados selecionados. Este plugin pode estar desatualizado, ou eu fiz algo errado?

1 curtida

Parece que está quebrado na versão mais recente, de fato. Por favor, aguarde enquanto eu corrijo isso.

1 curtida

Está corrigido, basta baixar uma nova versão e pronto.

Obrigado por relatar!

Aparentemente, isto

<Input
   @type="checkbox"
   @checked={{this.args.outletArgs.category.custom_fields.private_topics_enabled}}
/>

agora preenche o campo com t enquanto costumava ser true.

2 curtidas