Este guia explica como se passar por um usuário no Discourse e retornar à sua conta de administrador. Isso é útil quando você precisa solucionar problemas enfrentados por um usuário específico ou verificar suas permissões.
Nível de usuário necessário: Administrador
O administrador pode optar por se passar por outro usuário quando necessário. Isso pode ser útil quando um membro está apresentando um comportamento estranho ou você precisa verificar suas permissões. Assumir a identidade de outro usuário age como se você estivesse logado como esse usuário. Esta documentação o guiará pelo processo de se passar por um usuário como administrador e como retornar à conta de administrador.
Assumindo a Identidade de um Usuário
Navegue até a seção Admin na barra lateral e selecione Users (Usuários).
Encontre e selecione o perfil do usuário que você deseja emular.
Clique em Admin no canto superior direito.
Na parte inferior, selecione o botão
Impersonate(Assumir Identidade)
Uma vez que você assumiu a identidade do usuário, você não está mais logado como administrador. Você experimentará a interface do Discourse exatamente como o usuário a vê.

Assumir a identidade de um usuário não é transparente — cria uma visita registrada para esse usuário e redefine quaisquer sinalizadores de notificação acionados. Considere comunicar ao usuário que a emulação de identidade foi realizada.
Terminando a sessão de emulação de identidade
Método 1, bom para uso infrequente:
Para parar de emular a identidade e retornar à sua conta de administrador, basta sair da conta do usuário emulado e fazer login novamente como administrador.
Fazer login e emular a identidade em uma janela privada/anônima evita a necessidade de fazer login novamente na sua sessão de navegador principal. Basta fechar a janela anônima e pronto!
Método 2, recomendado se você emula identidades com frequência
A configuração
impersonate_without_logout, quando ativada, exibe um banner persistente na parte superior da interface enquanto você está emulando a identidade de um usuário, com um botão para encerrar a sessão imediatamente e retornar à sua conta de administrador.
Isso torna os fluxos de trabalho de emulação de identidade repetidos mais seguros e eficientes, especialmente para suporte e QA.
Além disso, a configuração oculta do site
experimental_impersonation_time_limit_minutespode ser usada para definir uma duração máxima para uma sessão de emulação de identidade (padrão: 15 minutos). Assim que esse limite de tempo for atingido, a sessão é encerrada automaticamente, adicionando uma camada extra de segurança.Habilitando
impersonate_without_logoutA maneira recomendada de habilitar este recurso é através de Admin → Upcoming Changes (Próximas Alterações) (
/admin/config/upcoming-changes), onde pode ser ativado para toda a equipe ou grupos específicos.Para sites auto-hospedados (self-hosted), ele também pode ser ativado via console Rails:
SiteSetting.impersonate_without_logout = true SiteSetting.experimental_impersonation_time_limit_minutes = 15
Pode valer a pena notar que se passar por um usuário não é transparente – cria uma visita registrada para esse usuário e redefine quaisquer sinalizadores de notificação que sejam acionados. Provavelmente, é melhor comunicar a qualquer usuário real que isso está sendo feito.
Também me deparei com esse problema. Podemos pelo menos adicionar uma caixa de diálogo de confirmação no botão “Impersonate”? Atualmente, ele inicia a impersonação imediatamente sem alertar o usuário sobre as ressalvas, especialmente sobre a criação de uma visita registrada.
Os outros botões em sua vizinhança (como “Delete user”) têm uma caixa de diálogo de confirmação. Como usuário, eu esperaria que o botão “Impersonate” abrisse uma caixa de diálogo, assim como os outros.

Eu nem notei a falta de uma caixa de diálogo de confirmação, mas sim, esse seria um bom lugar para avisar que você está prestes a se tornar aquele usuário e deixar rastros — não apenas bisbilhotar nos bastidores sem impacto.
Acho que você pode ativar a configuração em /admin/config/upcoming-changes agora.


