第3章 Salesforce to database サンプルインテグレーションの実装
このサンプルインテグレーションは Salesforce の更新を取得し、データベースストアドプロシージャーを呼び出します。これにより、そのデータベースと Salesforce の更新を同期します。
前提条件
開発に使用される Salesforce インストールでアカウントが必要になります。このアカウントは Salesforce API にアクセスできる必要があります。Salesforce Enterprise アカウントまたは Salesforce Developer アカウントは Salesforce API にアクセスできます。無料の開発者アカウントを取得するには、https://developer.salesforce.com/signup にアクさきほどセスしてください。Salesforce アカウントの取得には最大 2 分かかります。
Twitter to Salesforce サンプルインテグレーションをすでに作成している場合は、次に該当します。
- Fuse Online がすでに Salesforce クライアントとして登録されています。これをもう一度実行する必要はありません。
- このサンプルインテグレーションで再利用できる Salesforce コネクションがあります。
Twitter to Salesforce サンプルインテグレーションを作成していない場合は、Fuse Online を Salesforce クライアントとして登録し、Salesforce to database サンプルインテグレーションを完了するために Salesforce コネクションを作成する必要があります。
- Fuse Online 環境にログインしている必要があります。
- 管理者が Fuse Online サンプルデータを追加した OpenShift Container Platform プロジェクトで実行されている Fuse Online 環境で作業しています。この環境では、インテグレーションが想定どおり動作することを確認するための PostgresDB 接続および To Do アプリケーションが提供されます。
このサンプルインテグレーションを実装、デプロイ、およびテストするための主なステップは次のとおりです。
3.1. Fuse Online を Salesforce クライアントアプリケーションとして登録
インテグレーションで Salesforce に接続するには、最初に Fuse Online 環境を Salesforce にアクセスできるクライアントアプリケーションとして登録する必要があります。これにより、Salesforce に接続するインテグレーションをいくつでも作成することができます。そのため、特定の Fuse Online 環境を 1 度だけ Salesforce に登録する必要があります。
Fuse Online を Salesforce クライアントアプリケーションとして登録できるのは、Fuse Online 環境ごとに 1 回のみです。ただし、各 Salesforce コネクションは同じ登録を使用しますが、異なるユーザー認証情報を使用することができます。
すでに Fuse Online を Salesforce クライアントとして登録し、Salesforce コネクションを作成している場合は、Salesforce to database インテグレーションの作成およびデプロイ に進みます。
前提条件
Fuse Online にログインしている必要があります。
手順
Fuse Online で以下を行います。
- 左側のパネルで Settings をクリックします。
-
Settings ページで、上部付近にあるコールバック URL の右側で
をクリックし、Fuse Online 環境のコールバック URL をクリップボードにコピーします。この手順の最後の方でこの URL が必要になります。
- Salesforce エントリーをクリックして 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 では以下を追加します。
- API (api) を介してユーザーデータを管理する
- 一意のユーザー識別子 (openid) にアクセスする
- いつでもリクエストを実行 (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 をクリックします。
- Salesforce エントリーをクリックして折りたたみます。