Apigee Integration で利用できるタスクには、コアタスクとコネクタタスクの 2 種類があります。Read Salesforce Record タスクは、Salesforce インスタンスの既存の Salesforce オブジェクトを読み込むコネクタタスクです。
始める前に
このセクションでは、変更データ キャプチャ(CDC)イベントまたはプラットフォーム イベントを使用して Pub/Sub 方式で Apigee Integration に変更をストリーミングするように Salesforce インスタンスを接続、構成する手順の概要を説明します。Apigee Integration で Salesforce 関連のタスクまたはトリガーを構成する前に、次の手順を行う必要があります。
統合ユーザーを設定する
以下のステップで統合ユーザーを設定します。
sysadmin
認証情報を使用して Salesforce インスタンスにログインします。- 下の図に示すように、歯車アイコンをクリックし、[Setup] を選択します。
- [Administration] メニューから [Users] > [Users] をクリックします。
- [Users] パネルで、[New User] ボタンを選択します。
- [User Edit] ダイアログで、次の情報を入力します。
- First Name: 統合ユーザーの名。
- Last Name: 統合ユーザーの姓。
- Email Address: 統合ユーザーのメールアドレス。可能であれば、グループのメールアドレスにしてください。
- Username: 組織レベルの命名規則を遵守するユーザー名。
新しい統合ユーザーを作成する場合は、
EMAIL.SALESFORCE_ORG_NAME.SANDBOX_NAME
の形式を使用します。既存の統合ユーザーが存在している場合は、そのユーザー名がここに入力されていることを確認してください。
- Role: プルダウンからオプションを選択します。
- User License: 「
Salesforce
」と入力するか、試用版組織を使用する場合は「Salesforce Platform
」と入力します。 - Profile: 統合ユーザーの権限プロファイルをプルダウンから選択します。
統合ユーザーの Salesforce へのアクセス権を不正アクセスから保護するために、権限なしのプロファイルを割り当てることをおすすめします。
- [Save] をクリックします。
- 新しい統合ユーザーのパスワードを更新する手順は次のとおりです。
- [Users] ペインの [Reset password(s)] ボタンをクリックします。パスワードの再設定メールが、ユーザーに関連付けられているメールアドレスに送信されます。
- メール アカウントからパスワード再設定のフローに従います。新しいパスワードをメモしてください。この後の手順で必要になります。
権限セットを構成する
統合ユーザーに適した権限セットへのアクセス権がすでにある場合は、この手順をスキップして、セキュリティ トークンを設定するに進んでください。それ以外の場合、統合ユーザーと Salesforce オブジェクトの権限を構成するには、以下の操作を行います。
統合ユーザーの権限セットを構成するには:
- [Setup] メニューで [Users] > [Permission Sets] をクリックします。
- [Permission Sets] ペインで、[New] ボタンをクリックします。
- [Permission Sets] ダイアログで、次の詳細を入力します。
- ラベル: 権限セットの名前を入力します。
- ライセンス: [License] プルダウンから [Salesforce] を選択します。
- [Save] をクリックします。
- [System] 設定オプションの一覧を下にスクロールして、System Permissions を選択します。
- [System Permissions] ページで、[Edit] ボタンをクリックします。
- 使用可能な権限のリストを下にスクロールし、[API Enabled] チェックボックスをオンにします。
Api 専用ユーザー権限も必要ですが、必要なセキュリティ トークンがリセットされるまで有効にすることはできません。この権限は後のステップで追加します。
- (省略可)必要に応じて [Modify All Data] と [View All Data] までスクロールして選択します。この権限は必須ではありませんが、新しいオブジェクトへのアクセス権を統合ユーザーに自動的に付与したい場合に便利です。サンドボックスでのテストにのみ、これらの権限を有効にすることをおすすめします。
- 権限リストの先頭までスクロールして、[Save] をクリックします。
- 設定を確認し、[Save] をクリックします。
Salesforce オブジェクトの権限セットを構成するには:
- [Permission Set Overview] をクリックし、メインの [Permissions Set] 構成ページに戻ります。
- [Permissions Set] ペインの [Apps] セクションから [Object Settings] を選択します。
- 下にスクロールして、権限セットを必要とする Salesforce オブジェクトを選択します。この例では、[Opportunity] オブジェクトを使用します。
- オブジェクトの詳細ページの [Edit] ボタンをクリックします。
- レコードタイプのチェックボックスを選択します。必須のレコードタイプがわかっている場合は、それらを選択します。必須のレコードの種類がわからない場合は、すべてを選択します。
- [Object Permissions] のチェックボックスをオンにして有効にします。[Read] と [View All] をおすすめします。
- 対応するチェックボックスをオンにして、読み取りアクセスまたは編集アクセスを各オブジェクト フィールドに付与します。
- ページの上部までスクロールして [Save] をクリックします。
セキュリティ トークンを設定する
統合ユーザーのセキュリティ トークンを以前に作成している場合で、パスワードをリセットする場合、新しいセキュリティ トークンが記載されたメールが自動的に送信されます。その新しいトークンを使用すると、接続されているアプリの作成に進むことができます。
セキュリティ トークンを作成していない場合は、次の手順で統合ユーザーのセキュリティ トークンをリセットします。
- 前のステップで設定したユーザー名とパスワードを使用して、統合ユーザーとして Salesforce にログインします。
- メインメニューでプロフィール写真をクリックし、[Settings] をクリックします。
- [Settings] メニューで [Reset My Security Token] を選択し、[Reset Security Token] ペインを開きます。
- [Reset Security Token] ボタンをクリックします。
- 新しいセキュリティ トークンが記載されたメールが、統合ユーザーに関連付けられているメール アカウントに届いたことを確認します。後のステップで必要になるため、新しいセキュリティ トークンをメモします。
- (省略可)権限セットのシステムの権限で Api User Only 権限を有効にします。詳細については、権限セットを構成するをご覧ください。
接続されているアプリを作成する
接続されているアプリを設定するには、システム管理権限が必要です。現在、統合ユーザーとしてログインしている場合は、必ずログアウトしてから sysadmin
として再度ログインしてください。
接続されているアプリを設定する手順は、次のとおりです。
- 歯車アイコンをクリックして、[Setup] を選択します。
- 下の図に示すように、[Setup] メニューから [App Manager] を検索して選択します。
- [New Connected App] をクリックします。
- [Configuration] ペインで、次の詳細を入力します。
- 接続されているアプリ名: 接続されているアプリの名前を入力します。
- API Name: API の名前を入力します。
- Contact email: 接続されているアプリのメールアドレス(理想的にはグループのメール エイリアス)を入力します。
- API (Enable OAuth Settings): [Enable OAuth Settings] を選択します。次に、以下のとおりに設定します。
- (省略可)Callback URL: 外部サービスが検証を行う場合にのみ必要です。コールバックを指定する場合は、
http(s)://
接頭辞を必ず含めてください。 - Selected OAuth Scopes: 次のいずれかを選択します。
- データにアクセスして管理する(api)
- ユーザーに代わってリクエストを随時実行する(refresh_token、offline_access)
- (省略可)Callback URL: 外部サービスが検証を行う場合にのみ必要です。コールバックを指定する場合は、
- [Save] をクリックします。
- [Continue] をクリックします。
- 次のページに、コンシューマ シークレットとコンシューマ キーが表示されます。これらの値はメモしてください。Apigee の Auth モジュールを設定するときに使用されます。
- [Manage] ボタンをクリックします。
- [Connected App Detail] ページで、[Edit Policies] ボタンをクリックします。
- [OAuth Policies] セクションで、[Permitted Users] プルダウンの値を [Admin approved users are pre-authorized] に変更します。
- [Save] をクリックします。
- このページの [Profiles] セクションと [Permission Set] セクションまでスクロールし、接続されているアプリに適用するプロファイルまたは権限セットを選択します。
- 目的のプロファイルまたは権限セットを選択します。
- [Save] をクリックします。
認証
このタスクを使用するには、OAuth2.0 クライアント認証情報を使用して認証プロファイルを設定する必要があります。Apigee Integration では、認証プロファイルを使用して Salesforce インスタンスに接続します。認証プロファイルを作成するには、次の手順を実行します。
- タスクの編集可能なプロパティで、[+New authentication profile] をクリックして、[認証プロファイル] ダイアログを開きます。
- 次のプロパティ値を設定します。
- [認証タイプ] で [OAuth 2.0 resource owner password credentials] を選択します。
- トークン エンドポイント:
- サンドボックスの場合、「
https://test.salesforce.com/services/oauth2/token
」と入力します。 - 本番環境の場合、「
https://login.salesforce.com/services/oauth2/token
」と入力します。
- サンドボックスの場合、「
- クライアント ID: クライアントの一意の識別子を入力します。
クライアント ID は接続されているアプリのコンシューマ キーです。コンシューマ キーは、接続されているアプリの [接続されているアプリの管理] ページ、または接続されているアプリの定義から確認できます。
- シークレット: クライアント シークレットを入力します。
クライアント シークレットは、接続されているアプリのコンシューマ シークレットです。コンシューマ シークレットは、接続されているアプリの [接続されているアプリの管理] ページ、または接続されているアプリの定義から確認できます。
- スコープ: アクセス トークンのスコープ。
スコープを使用するとユーザーのアクセス権限を指定できます。スペースで区切られた複数のスコープを指定できます。
- ユーザー名: 認証用のユーザー名。
- パスワード: ユーザーのパスワード。
- リクエストの種類: 次のいずれかの値を選択します。
- クエリ パラメータ
- リクエストの本文
選択したリクエストの種類は、Salesforce インスタンスでサポートされている必要があります。
- トークン パラメータ: トークンの取得に必要なリクエスト パラメータ。
- 認証プロファイル名: 認証プロファイルの名前。
- 認証プロファイル説明: 認証プロファイルの説明。
- SSL 証明書: SSL/TLS 証明書と対応する秘密鍵をアップロードします。
秘密鍵にパスフレーズがある場合は、パスフレーズを入力します。
- [保存] をクリックします。
Read Salesforce Record タスクを構成する
Read Salesforce Record タスクを構成するには:
- Apigee UI にアクセスしてログインします。
- UI の左上にあるプルダウン メニューから組織を選択します。
- [Develop] > [Integrations] の順にクリックします。
- [Integrations] リストから編集する統合を検索または選択し、クリックして統合デザイナーを開きます。
- [+Add a task/trigger] > [Tasks] の順にクリックして、使用可能なタスクのリストを表示します。
- [Read Salesforce Record] 要素を統合デザイナーにドラッグします。
- デザイナーの [Read Salesforce Record] 要素をクリックすると、[Read Salesforce Record] タスク構成ペインが表示されます。
- [Authentication] プルダウンで、前に作成した認証プロファイルを選択します。
- 残りのフィールドは、タスクの構成プロパティを使用して構成します。
- プロパティへの変更は自動的に保存されます。
構成プロパティ
次の表は、Read Salesforce Record タスクの構成プロパティを示しています。
プロパティ | データ型 | 説明 |
Salesforce ドメイン | 文字列 | 接続する Salesforce インスタンス名。
Salesforce ドメインは、Salesforce インスタンス URL で使用できます。例: |
Salesforce API のバージョン | 文字列 | Salesforce インスタンスの現在の API バージョン。 現在の API バージョンは、[設定] > [API] > [パートナー WSDL を生成] の Salesforce インスタンスで確認できます。 |
オブジェクト名 | 文字列 | 読み込む Salesforce オブジェクトの名前。 |
レコード ID | 文字列 | 更新するレコードの ID。 ID 値はレコードを挿入すると自動的に作成されます。ID 値はレコードを一意に識別するもので、レコードの存続期間中は変更されません。 |
レコード | 文字列 | タスクの戻り値。 読み取りオペレーションが成功すると、この変数に読み取られた Salesforce オブジェクトの詳細が格納されます。 |
失敗時に再試行する
タスクのエラーを処理するさまざまな再試行戦略を構成できます。再試行戦略では、エラー時にタスクを再実行する方法を指定できます。詳細については、エラー処理の方式をご覧ください。
考慮事項
Salesforce インスタンスの割り当て制限は、このタスクの使用に影響が及ぶ可能性があります。Salesforce の管理者に連絡して、統合の設計が Salesforce の割り当てと互換性があることを確認してください。