WordPress SSO ユーザーはシームレスに、私は手動承認

さて、ユーザーの自動承認に関する以前の投稿に続き、フォーラムのローンチ当初は手動承認で問題ないと判断しました(自動化については後で検討します)。

しかし、承認と招待の違いについて、根本的な見落としがあるような気がします。私が達成したいことを説明するのが一番わかりやすいかもしれません。

簡単に言うと、管理者である私自身が最初にある程度の手動ステップを踏むことには問題ありません。ただし、メンバーにとってはできるだけシンプルでわかりやすいものでありたいと考えています。

招待を送信し、それを一括で行うことは可能だと理解しています。しかし、招待状を送りたくないのです。私にとっては、それは不要な手順に思えます。

その代わりに、メインサイト(WordPress SSO と統合済み)から、ログイン済みのメンバーにのみ表示されるフォーラムへのリンクを設ける予定です。メンバーがそのリンクをクリックすると、すでにメインサイトにログインしている状態で、フォーラムに直接移動して利用を開始できるようになります。メンバーにとっては、招待や承認の概念はどちらも不要な複雑さです。

つまり、まとめると、メンバーに招待状を送らずに、ユーザーの一部を手動で一括承認するにはどうすればよいでしょうか?

前述の通り、単純な見落としがあるのではないかと思っています :slight_smile:

よろしくお願いいたします。

WordPress を SSO マスターとして使用している場合、すでに説明どおりに機能しています。

ここが不足している部分ではないかと疑っています。

フォーラムの設定を行っていない状態で、メンバーアカウントを使って WordPress サイトにログインし、その後フォーラムの URL にアクセスすると、a) 以下の表示が現れ、b) 管理者による承認が必要になります。

ユーザーにこのメッセージを表示させず、管理者が承認する必要がないように、事前に適切なユーザーを承認する方法を探しています。

追伸:はい、WordPress がマスター SSO です。

「ユーザーの承認を必須にする」が設定でチェックされていないことを確認してください。

これは見たことがありますが、URLを知っている誰でもアクセスできてしまうのではないかと疑問に思っています。特定のユーザーのみを承認したいと考えており、彼らがフォーラムにアクセスしようとする前にその処理を行いたいのです。

いいえ。WP SSO が初期アクセスを提供します。

なるほど…でも、それだとサーバーのアカウントを持つ全員にアクセスが開かれてしまい、特定のグループ(会員)だけにはなりませんよね?私の WordPress サイトのアカウントの約 25% が会員なので、そのグループだけを手動で承認し、残りの約 75% は承認したくないと考えています。意味が通じますか?

はい。その場合、以下のいずれかを行う必要があります。

  1. メンバーを全アクセス権限を持つ Discourse グループに追加し、他のユーザーのアクセスを制限する、または
  2. WP で メンバーステータスから外れたユーザーを停止する。

私は現在、上記の 2) を採用していますが、メンバーシップの有効期限が切れたユーザーの手動停止を行っています。いずれ自動化する予定ですが、期限切れの件数は少ないため、手動で行うことで、ユーザーに更新のための猶予期間を設けることができます。

ああ、なるほど。1 が私にとって良い選択肢のようですが、1 つ条件があります。つまり、メンバーグループに全アクセス権を付与すればそれで十分だということでしょうか?非メンバーはそのグループに含まれていない(私が手動で管理する)という事実だけで、彼らをブロックできる(招待を送信しないなど)という理解でよろしいでしょうか?

これについては調査とテストを行いますが、グループを追加してメンバーを管理するだけで、非メンバーの扱いについて明示的に設定する必要がないという答えであってほしいと願っています。非メンバーには、アクセスを拒否するためだけでも、私のフォーラムに一切の「足跡」を残したくありません :slight_smile:

私の質問に根気強く対応いただき、ありがとうございます。あなたの回答は非常に感謝しております。

Discourse の各カテゴリのデフォルト設定では、全員 が「作成」「返信」「閲覧」が可能になっています。カテゴリオプションで 全員current_members または特定のグループ名に置き換えてください。

OK、また戻ってきました :slight_smile: 少しさらに考えてみたところ、グループレベルでアクセスを許可する(メンバーグループを作成し、その参加者と権限を管理する)アプローチは、メンバーに対しては機能しそうです。

ただし、非メンバーの場合はログインできてしまいます(承認を必須とするオプションのチェックを外すため)。しかし、何もアクセスできません。これはサポートの負担を生む可能性があります。

メンバーではないが顧客である人々が、直接フォーラムにアクセスしようとする場面を想像できます(特に、メンバー特典の一つとしてフォーラムを積極的に宣伝する予定のため)。提案されたアプローチでは、彼らは実際にログインできてしまう(少なくともある程度リソースを消費する)ものの、何も表示されずにブロックされてしまいます。

これは、可能であれば避けたい非効率だと感じています。混乱を招く道筋につながるため、非メンバーがログインすること自体を避けたいのです。

残念ながら、「事前承認」機能、つまり管理者がユーザーセットを事前に承認し、招待を不要にし、他の誰かがログインすることさえ防ぐ機能が存在しないため、これはまるで「ワカアモレ」ゲームのようだと感じています。

私が求めている論理的な体験は、簡単には実現できないようですが、以下の通りです。

  1. ログイン済みのメンバーは、リンクをクリックするだけで、既に承認済みのため、一切のプロンプトなしにフォーラムにアクセスできる。

  2. ログインしている人がメンバーではなく顧客である場合、単に「メンバーではありません」と伝えられ、できれば販売ページへのリンクが表示される。

これは、おそらく「岩と硬い場所」の間で板挟みになる状況でしょう。

改めてありがとうございます。

WordPress でメンバーシップを管理している場合、1 番のためにこれが必要です:

WordPress の有効なユーザーは、Discourse に自動的に作成されます。

2 番については、停止されたユーザーに表示されるテキストをカスタマイズし、更新先へのメッセージとリンクを含めることができます。彼らは以下のようなものを見ますが、カスタマイズしたメッセージが表示されます。