Salesforce コネクタ V1.0 - Amazon Kendra

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Salesforce コネクタ V1.0

Salesforce は、サポート、営業、マーケティングの各チームを管理するための顧客関係管理 (CRM) ツールです。を使用して Amazon Kendra 、Salesforce 標準オブジェクトやカスタムオブジェクトのインデックスを作成できます。

重要

Amazon Kendra は Salesforce API バージョン 48 を使用します。Salesforce API は、1 日あたりに可能なリクエストの数を制限します。Salesforce がこれらのリクエストを超えると、続行できるまで再試行されます。

注記

Salesforce コネクタ V1.0 / SalesforceConfiguration API のサポートは 2023 年に終了する予定です。Salesforce コネクタ V2.0 / TemplateConfiguration API への移行または使用をお勧めします。

Amazon Kendra Salesforce データソースコネクタのトラブルシューティングについては、「」を参照してくださいデータソースのトラブルシューティング

サポートされている機能

Amazon Kendra Salesforce データソースコネクタは、次の機能をサポートしています。

  • フィールドマッピング

  • ユーザーアクセスコントロール

  • 包含/除外フィルター

前提条件

を使用して Salesforce データソース Amazon Kendra のインデックスを作成する前に、Salesforce と AWS アカウントでこれらの変更を行ってください。

Salesforce で、次の作業を行ったことを確認してください。

  • Salesforce アカウントを作成し、Salesforce への接続に使用するユーザー名とパスワードをメモすること。

  • OAuth を有効にした Salesforce 接続アプリケーションアカウントを作成し、Salesforce 接続アプリケーションに割り当てられたコンシューマーキー (クライアント ID) とコンシューマーシークレット (クライアントシークレット) をコピーすること。クライアント ID とクライアントシークレットは、 シー AWS Secrets Manager クレットに保存されている認証情報として使用されます。詳細については、接続アプリケーションに関する Salesforce のドキュメントを参照してください。

    注記

    認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。認証情報とシークレットを、データソース、コネクタバージョン 1.0 と 2.0 (該当する場合) で再利用することは推奨しません

  • Salesforce への接続に使用されるアカウントに関連付けられた Salesforce セキュリティトークンをコピーすること。

  • インデックスを作成する Salesforce インスタンスの URL をコピーすること。通常、URL は https://<company>.salesforce.com/ です。サーバーは Salesforce 接続アプリケーションを実行している必要があります。

  • ReadOnly プロファイルをクローンし、すべてのデータを表示して記事を管理するアクセス許可を追加することで、Salesforce への読み取り専用アクセス権を持つユーザーの認証情報を Salesforce サーバーに追加しました。これらの認証情報は、接続を行うユーザーと、 Amazon Kendra 接続先の Salesforce 接続アプリケーションを識別します。

  • 各ドキュメントが Salesforce および同じインデックスに使用する予定の他のデータソース間で一意であると確認すること。インデックスに使用する各データソースには、データソース全体に同じドキュメントが含まれていてはなりません。ドキュメント ID はインデックス全体に適用され、インデックスごとに一意である必要があります。

で AWS アカウント、以下があることを確認します。

  • Amazon Kendra インデックスを作成し、API を使用している場合はインデックス ID を記録しました。

  • データソースの IAM ロールを作成し、 API を使用している場合は、 IAM ロールの ARN を記録しました。

    注記

    認証タイプと認証情報を変更する場合は、 IAM ロールを更新して正しい AWS Secrets Manager シークレット ID にアクセスする必要があります。

  • Salesforce の認証資格情報を AWS Secrets Manager シークレットに保存し、API を使用している場合は、シークレットの ARN を記録済み。

    注記

    認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。認証情報とシークレットを、データソース、コネクタバージョン 1.0 と 2.0 (該当する場合) で再利用することは推奨しません

既存の IAM ロールまたはシークレットがない場合は、Salesforce データソースを に接続するときに、コンソールを使用して新しい IAM ロールと Secrets Manager シークレットを作成できます Amazon Kendra。API を使用している場合は、既存の IAM ロールと Secrets Manager シークレットの ARN とインデックス ID を指定する必要があります。

接続手順

Salesforce データソース Amazon Kendra に接続するには、 がデータ Amazon Kendra にアクセスできるように Salesforce データソースの必要な詳細を指定する必要があります。の Salesforce をまだ設定していない場合は、 Amazon Kendra 「」を参照してください前提条件

Console

Salesforce Amazon Kendra に接続するには

  1. AWS マネジメントコンソールにサインインし、Amazon Kendra コンソール を開きます。

  2. 左側のナビゲーションペインで、[インデックス] を選択し、インデックスのリストから使用するインデックスを選択します。

    注記

    [インデックスの設定] で、[ユーザーアクセスコントロール] 設定を設定または編集できます。

  3. [使用開始] ページで、[データソースを追加] を選択します。

  4. [データソースを追加する] ページで [Salesforce コネクタ V1.0] を選択し、[コネクタを追加] を選択します。

  5. [データソースの詳細を指定] ページで、次の情報を入力します。

    1. [データソース名] - データソースの名前を入力します。ハイフン (-) は使用できますが、スペースは使用できません。

    2. (オプション) [説明] - オプションで、データソースの説明を入力します。

    3. [デフォルト言語] - インデックスのドキュメントをフィルターする言語。特に指定しない限り、言語はデフォルトで英語に設定されます。メタデータで指定された言語は、選択した言語よりも優先されます。

    4. [新しいタグを追加] - リソースの検索とフィルタリング、共有コストの追跡を行うためのタグ。

    5. [次へ] をクリックします。

  6. [アクセスとセキュリティの定義] ページで、次の情報を入力します。

    1. [Salesforce URL] - インデックスを作成する Salesforce サイトのインスタンス URL を入力します。

    2. [認証のタイプ][既存] または [新規] を選択して Salesforce 認証情報を保存します。新しいシークレットを作成すると、 AWS Secrets Manager シークレットウィンドウが開きます。

      1. [ AWS Secrets Manager シークレットウィンドウを作成] に次の情報を入力します。

        1. [シークレット名] - シークレットの名前。シークレット名には、プレフィックスAmazonKendra「-Salesforce-」が自動的に追加されます。

        2. [ユーザー名][パスワード][セキュリティトークン][コンシューマーキー][コンシューマーシークレット][認証 URL] には、Salesforce アカウントで作成した認証情報の値を入力します。

        3. [認証を保存] を選択します。

    3. IAM ロール — 既存の IAM ロールを選択するか、新しい IAM ロールを作成してリポジトリ認証情報にアクセスし、コンテンツにインデックスを作成します。

      注記

      IAM インデックスに使用される ロールは、データソースには使用できません。インデックスやよくある質問に既存のロールが使用されているかどうかが不明な場合は、エラーを避けるため、[新しいロールを作成] を選択してください。

    4. [次へ] をクリックします。

  7. [同期設定の構成] ページで、次の情報を入力します。

    1. [添付ファイルのクロール] - 選択すると、添付されたすべてのオブジェクト、記事、フィードがクロールされます。

    2. [標準オブジェクト][ナレッジ記事][Chatter フィード] - クロールする Salesforce エンティティまたはコンテンツタイプを選択します。

      注記

      インデックス作成には、標準オブジェクト、ナレッジ記事、または Chatter フィードのうち少なくとも 1 つの設定情報を入力する必要があります。[ナレッジ記事] をクロールすると選択した場合は、インデックスを作成するナレッジ記事のタイプ、記事の名前、すべてのナレッジ記事の標準フィールドをインデックス化するのか、カスタム記事タイプのフィールドのみをインデックス化するのかを指定する必要があります。カスタム記事のインデックスを作成する場合は、記事タイプの内部名を指定する必要があります。最大 10 個の記事タイプを指定できます。

    3. 頻度 — Amazon Kendra がデータソースと同期する頻度。

    4. [次へ] をクリックします。

  8. [フィールドマッピングを設定] ページで、次の情報を入力します。

    1. 標準ナレッジ記事標準オブジェクトアタッチメント 、および追加の推奨フィールドマッピング - インデックスにマッピングする Amazon Kendra 生成されたデフォルトのデータソースフィールドから選択します。

      注記

      _document_body へのインデックスマッピングが必要です。Salesforce ID フィールドと Amazon Kendra _document_id フィールド間のマッピングは変更できません。

    2. [フィールドを追加] - カスタムデータソースフィールドを追加して、マッピング先のインデックスフィールド名とフィールドデータタイプを作成します。

    3. [次へ] をクリックします。

  9. [確認と作成] ページで、入力した情報が正しいことを確認し、[データソースを追加] を選択します。このページで情報の編集を選択することもできます。データソースが正常に追加されると、データソースが [データソース] ページに表示されます。

API

Salesforce Amazon Kendra に接続するには

次の SalesforceConfiguration API を指定する必要があります。

  • サーバー URL - インデックスを作成する Salesforce サイトのインスタンス URL。

  • シークレット Amazon リソースネーム (ARN) - Salesforce アカウントの認証情報を含む Secrets Manager シークレットの Amazon リソースネーム (ARN) を指定します。シークレットは、次のキーを含む JSON 構造に保存されます。

    { "authenticationUrl": "OAUTH endpoint that Amazon Kendra connects to get an OAUTH token", "consumerKey": "Application public key generated when you created your Salesforce application", "consumerSecret": "Application private key generated when you created your Salesforce application.", "password": "Password associated with the user logging in to the Salesforce instance", "securityToken": "Token associated with the user account logging in to the Salesforce instance", "username": "User name of the user logging in to the Salesforce instance" }
  • IAM role — を呼び出しCreateDataSourceて、 IAM ロールに Secrets Manager シークレットへのアクセス許可を付与し、Salesforce コネクタと に必要なパブリック APIs を呼び出すRoleArnタイミングを指定します Amazon Kendra。詳細については、「Salesforce データソースのIAM ロール」を参照してください。

  • インデックス作成には、標準オブジェクト、ナレッジ記事、または Chatter フィードのうち少なくとも 1 つの設定情報を入力する必要があります。

    • 標準オブジェクト - [標準オブジェクト] のクロールを選択した場合は、標準オブジェクトの名前と、ドキュメントコンテンツを含む標準オブジェクトテーブル内のフィールドの名前を指定する必要があります。

    • ナレッジ記事 - [ナレッジ記事] をクロールすると選択した場合は、インデックスを作成するナレッジ記事のタイプ、インデックスを作成するナレッジの状態、すべてのナレッジ記事の標準フィールドをインデックス化するのか、カスタム記事タイプのフィールドのみをインデックス化するのかを指定する必要があります。

    • Chatter フィードChatter フィードをクロールする場合は、インデックスを作成するコンテンツを含む Salesforce FeedItem テーブルの列の名前を指定する必要があります。

オプションで、次の機能を追加することもできます。

  • 包含フィルターと除外フィルター - 特定の添付ファイルを含めるか除外するかを指定します。

    注記

    ほとんどのデータソースは、フィルターと呼ばれる包含または除外パターンである正規表現パターンを使用しています。包含フィルターを指定すると、包含フィルターに一致するコンテンツのみのインデックスが作成されます。包含フィルターに一致しないドキュメントのインデックスは作成されません。包含フィルターと除外フィルターを指定した場合、除外フィルターに一致するドキュメントは、包含フィルターと一致してもインデックスは作成されません。

  • フィールドマッピング - 選択すると、Salesforce データソースフィールドを Amazon Kendra インデックスフィールドにマッピングします。詳細については、データソースフィールドのマッピングを参照してください。

    注記

    がドキュメント Amazon Kendra を検索するには、ドキュメント本文フィールドまたはドキュメントと同等のドキュメント本文が必要です。データソースのドキュメント本文フィールド名をインデックスフィールド名 にマッピングする必要があります_document_body。その他のすべてのフィールドはオプションです。

  • ユーザーコンテキストのフィルタリングとアクセスコントロール —Amazon Kendra ドキュメントの ACL がある場合は、ドキュメントのアクセスコントロールリスト (ACL) をクロールします。ACL 情報は、ユーザーまたはそのグループのドキュメントへのアクセスに基づいて、検索結果をフィルタリングするために使用されます。詳細については、「User context filtering」を参照してください。