第16章 Salesforce への接続
インテグレーションで Salesforce に接続するには、Fuse Online 環境を Salesforce クライアントアプリケーションとして登録する必要があります。これにより、Fuse Online による Salesforce へのアクセスが許可されます。この登録が完了していると、Salesforce コネクションを作成でき、そのコネクションに任意の数のインテグレーションを追加することができます。詳細は以下を参照してください。
16.1. Fuse Online を Salesforce クライアントアプリケーションとして登録
インテグレーションで Salesforce に接続するには、最初に Fuse Online 環境を Salesforce にアクセスできるクライアントアプリケーションとして登録する必要があります。これにより、Salesforce に接続するインテグレーションをいくつでも作成することができます。そのため、特定の Fuse Online 環境を 1 度だけ Salesforce に登録する必要があります。
Fuse Online を Salesforce クライアントアプリケーションとして登録できるのは、Fuse Online 環境ごとに 1 回のみです。しかし、各 Salesforce コネクションは同じ登録を使用しますが、異なるユーザークレデンシャルを使用することができます。
前提条件
Fuse Online にログインしている必要があります。Fuse Online にアクセスできる URL は、Red Hat Fuse Online Evaluation プログラムのウェルカムメールメッセージにあります。
手順
Fuse Online で以下を行います。
- 左側のパネルで Settings をクリックします。
-
Settings ページで、上部付近にあるコールバック URL の右側で
をクリックし、Fuse Online 環境のコールバック URL をクリップボードにコピーします。この手順の最後の方でこの URL が必要になります。
- Salesforce エントリーの右側にある Register をクリックし、 Client ID および Client Secret フィールドを表示します。
別のブラウザータブで、Salesforce アカウントにログインし、以下の手順にしたがって接続アプリケーションを作成します。これらの手順では、Salesforce Classic ユーザーインターフェースを使用していることを仮定します。Salesforce Lighting Experience インターフェースから切り替えるには、プロファイルアイコンをクリックして Switch to Salesforce Classic を選択します。追加情報は、Salesforce ドキュメントの「Create a Connected App」を参照してください。
- Salesforce で右上にある Setup をクリックします。
- 左側のパネルで Build > Create > Apps と選択します。
- Connected Apps まで下にスクロールし、New をクリックします。
- 必要な情報を入力し、Enable OAuth Settings を選択します。
-
Callback URL フィールドに、この手順の最初にコピーした Fuse Online URL を貼り付けます。例:
https://app-proj912876.7b63.fuse-ignite.openshiftapps.com/api/v1/credentials/callback
OAuth Scopes では以下を追加します。
- Access and manage your data (api)
- Allow access to your unique identifier (openid)
- Perform requests on your behalf at any time (refresh_token, offline_accesss)
- Configure ID token を選択し Include Standard Claims を選択します。
- 下にスクロールし、Save をクリックします。
-
上にスクロールし、Salesforce が短い待機時間を示していることを確認します。
- Continue をクリックします。
- Salesforce が提供するコンシューマー鍵をコピーします。
- Fuse Online の Settings ページに戻り、Salesforce が提供したコンシューマー鍵を Fuse Online の Salesforce Client ID フィールドに貼り付けます。
- Salesforce に戻り、Salesforce が提供するコンシューマーの秘密をコピーします。
- Fuse Online の Settings ページに戻り、Salesforce が提供したコンシューマーの秘密を Fuse Online の Salesforce Client Secret フィールドに貼り付けます。
- Save をクリックし、Ok をクリックします。
16.2. Salesforce コネクションの作成
Salesforce でデータにアクセスするインテグレーションを作成するには、最初に Salesforce コネクションを作成する必要があります。Salesforce コネクションの作成後、複数のインテグレーションで使用することができます。
前提条件
- Fuse Online にログインしている必要があります。Fuse Online にアクセスできる URL は、Red Hat Fuse Online Evaluation プログラムのウェルカムメールメッセージにあります。
- Fuse Online がウェブブラウザーで開かれている必要があります。
- Fuse Online 環境が Salesforce にアクセスできるアプリケーションとして登録されている必要があります。
Fuse Online の Settings ページで登録した後に受け取った Salesforce クライアント ID およびクライアントシークレットが追加済みである必要があります。
Fuse Online インストールを Salesforce クライアントとして登録した後、必ず 2 - 10 分ほど待ってから Salesforce コネクションを作成してください。
手順
- Fuse Online で、左側のパネルにある Connections をクリックして、使用できるコネクションを表示します。
- 右上の Create Connection をクリックし、利用可能なコネクターを表示します。コネクターは、1 つ以上のコネクションを作成するためのテンプレートです。
- Salesforce コネクターをクリックします。
Connect Salesforce をクリックして、Salesforce の承認ページを表示します。承認ページを表示するには Salesforce にログインする必要があることがあります。
Connect Salesforce が表示されない場合、Fuse Online 環境は Salesforce クライアントアプリケーションとして登録されていません。「Fuse Online を Salesforce クライアントアプリケーションとして登録」を参照してください。Salesforce コネクションの作成時に Fuse Online 環境が Salesforce クライアントアプリケーションとして登録されていない場合、Fuse Online は承認を要求する複数のフィールドを表示します。これらのフィールドに値を入力して Salesforce コネクションを作成することはできますが、推奨されません。
注記以下のエラーは、Salesforce に正しい Fuse Online コールバック URL が指定されていないことを表しています。
error=redirect_uri_mismatch&error_description=redirect_uri%20must%20match%20configuration
このエラーメッセージが表示されたら、Salesforce で「Fuse Online を Salesforce クライアントアプリケーションとして登録」の手順にしたがって Fuse Online コールバック URL が指定されていることを確認してください。
- Allow をクリックして、Fuse Online に戻ります。
-
Connection Name フィールドに、このコネクションを別のコネクションと区別するために使用する名前を入力します。たとえば、
SF Connect 1
を入力します。 -
Description は任意のフィールドで、このコネクションに関する便利な情報を入力します。たとえば、
Sample Salesforce connection that uses my Salesforce login credentials.
を入力します。 - 右上にある Create をクリックし、作成したコネクションが利用可能になったことを確認します。上記の例の名前を入力した場合は、インテグレーションに追加できるコネクションとして SF Connect 1 が表示されます。
16.3. Salesforce コネクションのインテグレーションへの追加
インテグレーションでは、フローの途中で Salesforce に接続したり、シンプルなインテグレーションを開始または終了できます。これには、Salesforce コネクションをインテグレーションに追加します。
前提条件
- Salesforce コネクションが作成されている必要があります。
- インテグレーションを作成または更新することになります。
- Fuse Online は最初のコネクション、最後のコネクション、またはステップの選択を要求します。
手順
- フローに追加する Salesforce コネクションをクリックします。インテグレーションが Salesforce に接続するために選択したコネクションを使用する場合、Fuse Online はそのコネクションに定義されたクレデンシャルを使用します。
- 選択したコネクションが実行するアクションをクリックします。フローに追加した各 Salesforce コネクションは選択したアクションのみを実行します。
- アクションが操作する Salesforce オブジェクトを指定します。たとえば、コンタクト、リード、または価格表のエントリーなどがこれに該当します。Object フィールドをクリックして Salesforce オブジェクトのリストから選択するか、オブジェクトの名前を入力します。
- Done をクリックして、コネクションをフローに追加します。
結果
インテグレーションフローで追加した場所にコネクションが表示されます。