Add 'stop impersonating' link to user avatar dropdown when impersonating

I really like this idea @John_Lehmann

Sometimes when I impersonate someone (albeit, not very often) I forget and keep trying to do admin type things and then realize I’m in someone elses account.

Another downside of the current process is that you have to click on the users avatar. I was impersonating a users that had 5 new notifications. When I clicked his profile, so I could log out of his account, it marks those notifications as read and no longer shows the (5) badge showing he has new notifications. How sad for him, when he returns! Hopefully he got some email notifications that will pull him back in!

Another community that I built and currently manage, is on the Higher Logic platform. I can’t tell you how much more I enjoy using Discourse than Higher Logic. But, now that I have that out of the way, I will say that I do like their method of impersonating users…

There’s a bar at the top of the screen, providing a constant visual reminder that you’re impersonating and a button to STOP, as well as a little orphan button at the bottom of the screen allowing you to STOP.

I don’t think they need both buttons. Top of the screen is sufficient.

I love @John_Lehmann’s suggestion with a more bold/obtrusive bar that stands out so you remember to get out of the user account before posting and doing other stuffs.

image

Not critical by any means.

I just came to meta, to see if there was a plugin for this, or something.

「いいね!」 12

Just ended up needing this today. I use the impersonate feature to post category guidelines, or other pinned topics or replies in them under the @system account. What I currently do is post them under mine, then change ownership to @system, but what if someone has the topic set to watching, then they would see that it was me. I’m not necessarily trying to be anonymous when posting these, although, I just don’t want those posts under my name. I could make an alt whose purpose is to post these, although I would have to log in from a private window each time, which is bad ux.

「いいね!」 2

また、なりすましが完了した際に、自分のユーザーアカウントに戻れるようにしたいです。これは、WordPressでこの機能のために使用したすべての実装で可能です。

「いいね!」 3

同意します。必須ではありませんが、大きな変更であり、ログアウトボタン付きのバナーを一番上に表示するのはそれほど複雑ではないと思います。プラグインを作成することもできますが、コアの簡単な変更の方が良いでしょう。

@John_Lehmann のアイデアに賛成です。

「いいね!」 4

この機能全体を再考する必要があるかどうか疑問に思います。

なりすましは常に非常に優れたツールでしたが、一種のハックとして実装されていました。

ハックではない実装は、はるかに不気味さがなく、デフォルト機能として正当化するのがはるかに簡単になる可能性があります。

  • ユーザーになりすましている間は、「読み取り専用」ビューしかありません(特別な非表示サイト設定が有効になっていない限り)。
  • @John_Lehmann が提案したような上部にバナーを表示する。
  • なりすましの際の儀式を増やす。例えば、「偉大な力には偉大な責任が伴う」など。

全体として、この機能はデバッグに非常に役立ちますが、他人の代わりに操作することは非常に危険です。

まず、@codinghorror さん、現在の「なりすまし」機能を Discourse サイトで無効にし、有効にするには非表示のサイト設定を変更する必要がある機能にすることは理にかなっていると思いますか?どうでしょうか?

「いいね!」 12

@sam 同意します。タグ付けして申し訳ありませんが、これは長年私がランダムに提起してきたことであり、一部の人々にとっては大きな問題です。なりすまし機能は、Discourse におけるユーザープライバシーを深刻な懸念事項にする唯一の機能であり、特に Discourse を社内(職場)のコミュニケーションおよびコラボレーションプラットフォームとして使用する場合に当てはまります。

過去に使用したことがあり、組合で使用するために Discourse インスタンスを復活させます。組合員のためではなく、選出された役員のためです。古いインスタンスを管理していた間は、ほとんどの人がそうであるように、私も通常の代表者でした。現在はグループのリーダーシップ/管理職に就いているため、組織内での私の役割は、Discourse 管理者がすべてのカテゴリ内のすべての資料を表示できる機能と矛盾しません。しかし、当時はそうでした…

私たちの執行グループは、管理者が(執行)特権カテゴリ内のディスカッションを表示できる能力について深刻な懸念を抱いていました。私は CSS を使用して、非執行グループメンバーから(管理者からも隠して)非表示にし、特定のテーマコンポーネント「ユーザープライバシー」を無効にした場合にログを表示する方法を指摘することで、ハック的に解決しました。

もう 1 つの大きな懸念は、Discourse 管理者であるアクティブな代表者(契約 IT 担当者ではなく)が、他のユーザーになりすまし、プライベートメッセージを読み、個人の設定やアイテムをいじることができることでした。

私が言えることは、管理者がグローバルな表示権限を持たず、代わりにサイト管理アクセス権限を増やし、デフォルトで割り当てられたコンテンツのみを表示できるようにする方法に焦点を当てることができれば素晴らしいということです。さらに、管理者スタッフがこのようなことをいじっている場合に、すべてのユーザーに通知するための明確な通知システムが必要です。

Discourse チームに似た名前、たとえば Discourse Professional と呼んでみましょう。インターネットフォーラムとしてではなく、ビジネス知識に基づいたコラボレーションおよびコミュニケーションプラットフォームとして意図されたものです。Discourse はこの役割で輝くでしょう。ただし、管理者がすべてを監視する能力を制限/抑制または排除できることが条件です。(最も中心的なのは、なりすましと、プロファイル/メッセージタブ経由でのメッセージの読み取りです)。

「いいね!」 6

個人的には、特定のユーザーになりすますというよりは、役割/グループメンバー/信頼レベルになりすますことへの強い願望があるとは思えません。

先日、管理者としては多くのプライベートカテゴリが表示されるのを見つけましたが、トピックリストがT0、T1などのレベルのユーザーにはどのように見えるかを確認したかったのです。

この機能はすでに存在し、なりすまし機能とは別のものであるかもしれませんが、それ以外に人々がなりすましを何に使用するのかはよくわかりません。

この機能はほとんどの人にとって十分でしょうか?

「いいね!」 7

この件については、The Impersonated user should be notified that they are being Impersonated に多くの議論があります。私はそこで導き出された結論にまだ同意しています。要約すると、それは「ウサギの穴」であり、管理者はすべてを実行できます。管理者を信頼しないのであれば、管理者を持つべきではありません。

おそらく別の方法は、なりすましにいくつかの「摩擦」を加えることです。

  • 「本当に実行しますか?」というポップアップを追加し、ログに記録されること、そして何かをテストしたいだけであれば、テストユーザーを作成して完了したら削除する方が良いかもしれないことを思い出させます。いわば、タイムリーな教育です。
  • なりすまし用のリンクをメールで送信します(これにより、別のウィンドウでログインできるという追加の利点がありますか?)バックアップのダウンロードと同様です。

また、なりすましを無効にする管理者設定も気に入っています。デフォルトは無効です。これは隠し設定である必要さえありませんが、バックアップ復元のように設定があることで、誰かが他のユーザーになりすます習慣をつけたり、誤って実行したりするリスクが軽減されます。

「いいね!」 3

システムを制御している場合、データにアクセスできます。信頼できる管理者が必要であり、ユーザーはプライバシーの期待がないことを教育する必要があります。これは、たとえ暗号化を使用していても、コミュニケーションおよびコラボレーションに使用されるすべてのソフトウェアに当てはまります。

カテゴリやプライベートメッセージへのアクセスを真に監査することさえできません。ルートアクセスを持つ悪意のある管理者は、ファイルシステムからバックアップを取得し、データベースから直接読み取ることができます。

「いいね!」 3

これは素晴らしい点です。なりすましが役立つ可能性のあるケースはまだいくつかあるかもしれませんが、これによりユーザーになりすます必要はほぼ完全になくなります。

「いいね!」 10

ユーザーが管理者やその偽ユーザーが見つけられない奇妙な問題を抱えている場合、または他のユーザーやごく少数のユーザーしか報告していない場合。

プライバシーは相対的な問題です。ほとんどのフォーラムでは、ユーザーが個人情報を一切持っていない状況にあると主張します。したがって、なりすましは少なくとも選択肢となるべきです。それが起こったときに自動的に通知することも、まったく悪い考えではありません。それはしばしば不要ですが、よりオープンなソリューションです。

「いいね!」 3

参考までに、信頼レベルのなりすましはここで提案されています。

「いいね!」 5

それは問題ないと思います。私はこれを実際の「機能」ではなく、開発者向けのデバッグ機能と見なしていました。

「いいね!」 6

誰かのなりすましを終えたら、サインアウトして再度ログインし、2FAを設定している場合は完了する必要があります。

代わりに、ユーザーメニューに「なりすましを停止」というボタンを設置し、それをクリックすると自分のアカウントにログインできるようにします。

個人的には、なりすましを行う際に非常に役立つ機能だと思います。

「いいね!」 2

ログアウトせずにユーザーになりすますことができる実験的な機能をマージしました。

これを使用したい場合は、非表示のサイト設定 experimental_impersonation を有効にして、問題があればここに報告してください。:folded_hands:

「いいね!」 22

古代の人が何を望んでいたのかを明らかにしてくれてありがとう! :hugs: :grinning_face_with_smiling_eyes:

「いいね!」 9

素晴らしい!これはレギュラーで使います。

「いいね!」 3

ありがとうございます!

これが安定したら、impersonation_enabled_groups を想像して、その逆を行うことができます。通常のメンバーとして参加し、必要なときにのみ管理者にアクセスします。つまり、sudoモードです…オンデマンドでペルソナを変更する方法が可能になります…たとえば、Discourse Staff Alias は疑似なりすましを単一のチームエイリアスに制限しますが、なりすましを拡張することで、さまざまな基準に従ってペルソナを変更できるようになります…

たとえば、@well-being.team のメンバーは、個人的な恨みをそらすためにグループエイリアスとして投稿したり、著者はインタラクティブなストーリーを書くために @narrator または @characterN として投稿したり、教師は生徒の視点を理解するためにその生徒になりすましたりすることができます…すべてカスタマイズ可能なグループに従って。:blush:

重要な機能は、なりすましセッションが適切に記録され、なりすまされたユーザーに知らされることだと思います。

「いいね!」 5

この experimental_impersonation 機能を試してみましたが、良いですね!説明通りの動作をし、ログアウトしてから自分自身として再度ログインするという手間が省けるのはありがたいです。

@moin🇩🇪 Fehler in der Deutschen Übersetzung? Hier melden! - #108 by Moin で、「impersonate」と「stop impersonating」はドイツ語ではうまく翻訳されないと指摘していました。やろうとしていることの全容を捉える適切な言葉を見つけるのは難しいです。他の言語でも同様のケースがあるかもしれませんが、確認していません。

(意図したわけではありませんが)ユーザー管理ページで「@user_to_impersonate に切り替える」のような、より直接的な用語に切り替えることを検討しませんか?そして、なりすましを停止するボタンでは「@user_who_impersonated に戻る」とするのはどうでしょうか。これは翻訳が容易になり、英語を母国語としないユーザーにとっても理解しやすくなるでしょう。

今日のテストでは、他にもいくつかの問題が明らかになりました。

  • 削除やマージと同様に、なりすましにはモーダルが必要だと思います。これにより、誤ってボタンを押した場合にキャンセルでき、また、これから何をするのか、それが記録されること、再度ログインせずに戻れることなどを管理者に教育できます。
  • なりすましを行っていることや、戻ること自体はスタッフアクションログに記録されますが、なりすましている間に行われたアクションは記録されません。この機能は意図的または偶発的に悪用される可能性が非常に高いため、それも記録するのが理にかなっていると思います。
  • 古くからの問題が依然として残っています。ユーザーをなりすますと、ユーザーリストやユーザー管理、そして(おそらく)「オンライン中のユーザー」プラグインがインストールされている場合はそのプラグインで、最後の表示日時が更新されてしまいます。
「いいね!」 8

そのswitchというアイデアは気に入りました。フィンランド語でも適切な翻訳を見つけるのが難しいからです。それには1つか2つの単語がありますが、どちらもあまり良い響きではありません。Switchで十分でしょう。

「いいね!」 1