Controlar usuário(s): habilidade de usar / acessar  - como?

Olá pessoal.

É possível controlar, permitir / negar, a capacidade de um determinado usuário (específico) de usar iframe (para vídeos incorporados, mais obviamente).

adicionando isso, passou um tempo enquanto eu relia. O mínimo seria - se tecnicamente um fardo de tal tamanho que quase impossível, então faça como staff VS todo o resto ou talvez por nível de confiança

E como sou um novato completo - a mesma pergunta / similar se aplicaria a outros aspectos dos “poderes” do usuário dentro do Discourse. Existe uma página de manual que cobre essas partes?

Criei um componente de tema que encontra “one-boxes” do Strava e Garmin e os substitui por iframes. Se você tiver um número fixo de sites de vídeo que deseja suportar, uma solução semelhante pode funcionar:

1 curtida

@pfaffman Tem certeza de que sua resposta tem algo a ver com minha pergunta?

Estou simplesmente perguntando se, com meios “regulares” de gerenciamento, no Discourse, é possível permitir/bloquear o uso (ou processamento ou renderização ou qualquer termo técnico que seja mais apropriado) de iframe (ou onebox ou qualquer que seja o termo/técnica)?

Se você quis dizer na resposta que existe um código que poderia ser adaptado dessa forma - então não é para mim nem para pessoas como eu, que não são desenvolvedores web.

Mas se @devel ler aqui - comecei a usar o Discourse recentemente, mas tenho muitos anos como administrador de muitas coisas, eu me pergunto:

  • como você, decidiu sobre esse aspecto “filosófico” da “liberdade” do usuário para incluir qualquer conteúdo (digamos, focando em vídeo puramente para isso)?

Na minha opinião, algo tão crítico quanto conteúdo de vídeo incorporado — que nem mesmo os hosts/provedores podem controlar 100% — deve (deve) ser finamente controlado (como todos os diferentes sistemas de computador que conheço tratam qualquer recurso crítico semelhante) em base por usuário/grupo.

Portanto, gostaria de apresentar, como sugestão, como um aprimoramento futuro — se o Discourse ainda não contemplou isso, se não houver capacidade para tal controle no Discourse hoje — para incluir tal mecanismo/técnica de “endurecimento” possivelmente em um futuro próximo. Acredito que muitos ficarão gratos por uma ótima solução de software - que o Discourse obviamente já é - ainda melhor.

1 curtida

Por padrão, o Discourse não permite que os usuários insiram a maioria dos elementos iframe nas postagens. Isso é controlado pela configuração do site iframes permitidos. Essa configuração aceita uma lista de domínios src de iframes que podem ser adicionados às postagens.

Não há como controlar quais iframes podem ser adicionados com base nas permissões de um usuário - não existe uma configuração iframes permitidos pela equipe.

Na maioria dos casos, o Discourse lida com a incorporação de conteúdo externo com “oneboxes”. Isso permite que os usuários insiram links em uma postagem. Em alguns casos, o Discourse converte esses links em iframes. Por exemplo, se um link para um vídeo do YouTube for adicionado em sua própria linha no editor de postagem, ele será convertido em um elemento de vídeo exibido em um iframe. Existe um número limitado de domínios que o Discourse lida dessa forma. Por exemplo, Vimeo, Youtube.

Você pode limitar quais domínios recebem oneboxes de iframe com a configuração do site iframes de onebox permitidos. O valor padrão dessa configuração é *. Se você quiser limitar isso, clique no campo de seleção que é exibido abaixo dessa configuração. Ele permite que você selecione domínios específicos da lista de domínios que o Discourse está configurado para usar como onebox em iframes.

3 curtidas

Para complementar a resposta de @simon e abordar este ponto específico, você pode definir \nmax oneboxes per post como 0 para desativar o oneboxing como um todo, o que também desativará conteúdo como vídeos do Youtube e Vimeo.

2 curtidas

Se esse parâmetro/valor pudesse ser complementado e substituído por um valor ‘por usuário’ - novamente, talvez em desenvolvimento/lançamentos futuros - então muitos certamente apreciarão muito. Obrigado.

Não parece funcionar para mim. Defini como 0, mas posts criados por usuários com iframes ainda aparecem como esperado, com um frame/player e reproduzem normalmente.
Haveria outro parâmetro/opção que substitui isso?
Além disso, como entender iframes permitidos neste contexto?

A configuração max oneboxes per post controla o número de oneboxes que podem ser adicionados a uma postagem. A terminologia pode ser confusa aqui, mas um “onebox” é a forma como o Discourse lida com links de uma variedade de fontes. Por exemplo, se o link da barra de endereço do navegador para um vídeo do Youtube ou Vimeo for adicionado em uma linha própria em uma postagem, o Discourse gerará um player de vídeo onebox para o link.

Se você definir max oneboxes per post como 0, os usuários não poderão criar esses tipos de oneboxes.

Acho que o que você está descobrindo é que a configuração não impede que os usuários adicionem elementos iframe às postagens. Para impedir que os usuários adicionem iframes às postagens, remova quaisquer fontes de iframe que estejam listadas na configuração do site allowed iframes. Aqui estão os valores padrão dessa configuração:

@simon - ok, obrigado. Parece ser o caso, sim, acho que agora entendo melhor o que acontece lá - se o iframe existir para um URI, então max oneboxes per post = 0 não significa nada para iframes
Sim, a nomenclatura e/ou descrição poderiam ser melhoradas para ajudar os recém-chegados.

Para reiterar - não é possível permitir onebox e/ou iframe apenas para administradores/moderadores, correto?

Eu acho que o Simon já respondeu a isso.

1 curtida

@Lilly você/devel pode transformar isso em uma solicitação de recurso para lançamentos futuros - obrigado. Tenho certeza que o Discourse aprimorado, aplicado dessa forma, agradará a muitos!

Quantos usuários você tem que realmente solicitaram isso? Você pode fazer desta solicitação de #recurso você mesmo, se quiser.

Não são os usuários, sou eu como administrador - apresentei minha justificativa da melhor forma que pude em algumas postagens anteriores.