Discourse Salesforce

|||
-|-|-|
:discourse2: | 概要 | Discourse Salesforce は、Discourse ユーザーと Salesforce のリード/連絡先の同期を可能にし、Salesforceソーシャルログインを有効にします。
:hammer_and_wrench: | リポジトリリンク | https://github.com/discourse/discourse-salesforce
:open_book: | インストールガイド | Discourseにプラグインをインストールする方法

Salesforceのリード/連絡先とDiscourseユーザー間の同期

Discourseのユーザーから、投稿メニューを使用してSalesforceのリードまたは連絡先を作成できます。それらのユーザーを簡単に区別するために、投稿内のユーザー名の横にポスターアイコンが表示されます。対応するSalesforceオブジェクトには、これらのDiscourseユーザープロファイルへのリンクバックがあります。

作成されたリードと連絡先は、Discourseユーザーグループに自動的に追加されます。

リードまたは連絡先が新しいトピックを作成すると、Chatterにフィードアイテムとして追加されます。

SalesforceのケースとDiscourseトピック間の同期

トピック管理メニューから、Discourseのトピックに対してSalesforceのケースを作成できます。トピックの作成者は、Salesforceの連絡先として自動的に作成されます。

Salesforce(OAuth)でのログイン

このプラグインは、Salesforceでのログインも可能にし、SalesforceユーザーがDiscourseに簡単にサインアップできるようにします。

設定

ステップ1から3は、新しい(2025)外部クライアントアプリマネージャーを使用したSalesforceコンソールでのセットアップをカバーしています。ステップ4と5は、Discourse Salesforceプラグインでのセットアップをカバーしています。

ステップ1:外部クライアントアプリマネージャーにアクセスする

右上にある歯車のアイコンをクリックして設定を選択します。「外部クライアントアプリマネージャー」を検索します。

📸


ステップ2:新しい外部クライアントアプリを作成する

「基本情報」を入力し、OAuth設定を有効にします。
コールバックURLは次のようになります。

  • https://
  • https:///auth/salesforce/callback

利用可能なOAuthスコープを追加します。

  • ID URLサービスにアクセスする(id、profile、email、address、phone)
  • API経由でユーザーデータを管理する(api)
  • いつでもリクエストを実行する(refresh_token、offline_access)

フローの有効化で

  • クライアント資格情報フローを有効にする
  • JWTベアラーフローを有効にする(リードと連絡先の作成用)
    • 証明書を生成する
    • server.crt ファイルをアップロードします(このウォークスルーでは、server.crtserver.key ファイルを生成すると想定しています)
    • server.key ファイルはサイト用に保持してください

保存します。

📸



ステップ3:新しい外部クライアントアプリのコンシューマーシークレットを取得する

新しく作成された外部クライアントアプリで、「設定」タブに移動し、下にスクロールして「OAuth設定」を展開します。

「コンシューマーキーとシークレット」をクリックし、ログイン情報を再度入力してから、次のステップに進みます。

📸

ステップ4:Discourse Salesforceプラグイン設定に詳細を入力する

https://<your-discourse-site>/admin/plugins/discourse-salesforce/settings にアクセスします。

6つの設定と1つの追加設定を更新する必要があります。

  • 「salesforce enabled」にチェックを入れます
  • 「salesforce login enabled」にチェックを入れます
  • 「salesforce client id」に、前のステップのコンシューマーキーを入力します
  • 「salesforce client secret」に、前のステップのコンシューマーシークレットを入力します
  • 「salesforce rsa private key」に、上記で生成した server.key ファイルを入力します
  • 「salesforce username」に、Salesforce組織の管理者メールアドレスを入力します。これはSalesforceのシステム管理者である必要があります。
  • カスタムSalesforceドメインがある場合:salesforce authorization server url

ステップ5:SalesforceのDiscourseアプリを承認する

https://<your-discourse-site>/salesforce/admin/authorize にアクセスします。

アプリの承認を求められます。

📸

:discourse2: 私たちがホストしていますか?このプラグインは、当社のエンタープライズプランで利用可能です。

「いいね!」 14

こんにちは。

このプロセスを完了しようとしている途中で、いくつか問題が発生したようです。設定部分がそれほど明確ではなかったので、このガイドとSalesForceのガイドを組み合わせて参考にしました。

Salesforce側でOAuthと自己署名サーバー.crtをアプリにアップロードしてアプリを作成しました。コールバックURL(Salesforceガイドのステップ6)は、推奨されるローカルホストURLがあまり意味をなさなかったので、Discord設定のデフォルトとしてhttps://login.salesforce.comを入力しました。コンシューマーキーとシークレット、RSAキー、そしてSalesforce管理者メールアドレスはすべてDiscourseプラグインのSalesforce設定に入力しましたが、Discourse側で作成されたリード生成などが表示されません。レビューできるステップバイステップガイドや、テストして問題を解決するためのインサイトをお持ちの方はいらっしゃいますか?

よろしくお願いします!
Tim

OPの構成セクションに、より詳細な手順をいくつか追加しました。

「いいね!」 2