Microsoft OneDrive コネクタ V2.0 - Amazon Kendra

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

Microsoft OneDrive コネクタ V2.0

Microsoft OneDrive は、コンテンツの保存、共有、ホストに使用できるクラウドベースのストレージサービスです。を使用して Amazon Kendra データソースのインデックスを作成できます OneDrive。

Amazon Kendra コンソールOneDriveConfiguration API を使用して OneDrive データソース Amazon Kendra に接続できます。

注記

OneDrive Connector V1.0 / OneDriveConfiguration API のサポートは 2023 年 6 月までに終了する予定です。 OneDrive Connector V2.0 / TemplateConfiguration API を使用することをお勧めします。バージョン 2.0 では、ACL と ID クローラー機能が追加されています。

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

サポートされている機能

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

  • フィールドマッピング

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

  • 包含/除外フィルター

  • 完全および増分コンテンツ同期

  • 仮想プライベートクラウド (VPC)

前提条件

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

で OneDrive、以下があることを確認します。

  • Office 365 で OneDrive アカウントを作成しました。

  • Microsoft 365 のテナント ID を記録しました。テナント ID は Azure Active Directory ポータルのプロパティまたは OAuth アプリケーションで確認できます。

  • Azure ポータルに OAuth アプリケーションを作成し、 シークレットによる認証に使用されるクライアント ID とクライアント AWS Secrets Manager シークレットまたはクライアント認証情報を記録しました。詳細については、「Microsoft チュートリアル」と「登録済みアプリケーションの例」を参照してください。

    注記

    Azure ポータルでアプリケーションを作成または登録すると、シークレット ID は実際のシークレット値を表します。シークレットとアプリを作成するときは、すぐに実際のシークレット値を書き留めるか、保存する必要があります。Azure ポータルでアプリケーションの名前を選択し、証明書とシークレットのメニューオプションに移動することで、シークレットにアクセスできます。

    Azure ポータルでアプリケーションの名前を選択し、概要ページに移動することで、クライアント ID にアクセスできます。アプリケーション (クライアント) ID はクライアント ID です。

    注記

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

  • AD アプリケーション ID を使用して AD サイト上のアプリケーションのシークレットキーを登録しました。シークレットキーには、アプリケーション ID とシークレットキーが含まれている必要があります。

  • 組織の AD ドメインをコピーしました。

  • Microsoft Graph オプションで、AD アプリケーションに次アクセス許可を追加しました。

    • すべてのサイトコレクション内のファイルを読み取る (File.Read.All)

    • すべてのユーザーの完全なプロフィールを読み取る (User.Read.All)

    • すべてのグループを読み取る (Group.Read.All)

    • すべてのメモを読む (Notes.Read.All)

  • インデックスを作成する必要があるドキュメントを持つユーザーのリストをコピーしました。ユーザー名のリストを指定するか、 Amazon S3に保存されているファイルにユーザー名を指定できます。データソースを作成すると、次のことが行なえます。

    • ユーザーのリストを変更します。

    • ユーザーのリストから Amazon S3 バケットに保存されているリストに変更します。

    • ユーザーのリストの Amazon S3 バケットの場所を変更します。バケットの場所を変更する場合は、データソースの IAM ロールを更新して、バケットにアクセスできるようにする必要があります。

      注記

      ユーザー名のリストを Amazon S3 バケットに保存する場合、データソースの IAM ポリシーは、バケットへのアクセスと、バケットが暗号化されたキーへのアクセスを提供する必要があります。

      OneDrive コネクタは、Onedrive ユーザープロパティ にある連絡先情報からの E メールを使用します。データをクロールするユーザーの [連絡先情報] ページの E メールフィールドが設定されていることを確認します。新規ユーザーの場合は、このフィールドは空白になる場合があります。

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

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

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

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

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

接続手順

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

Console

Amazon Kendra に接続するには OneDrive

  1. にサインイン AWS Management Console し、Amazon Kendra コンソール を開きます。

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

    注記

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

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

  4. データソースの追加ページで、OneDrive コネクタ を選択し、コネクタの追加 を選択します。バージョン 2 (該当する場合) を使用している場合は、「V2.0」タグが付いたOneDrive コネクタを選択します。

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

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

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

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

    4. タグ で、新しいタグを追加 — リソースを検索およびフィルタリングしたり、 AWS コストを追跡したりするためのオプションのタグを含めます。

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

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

    1. OneDrive テナント ID — プロトコルなしで OneDrive テナント ID を入力します。

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

    3. [認証] - [新規] または [既存] を選択します。

      1. [既存] を選択した場合は、[シークレットを選択] で既存のシークレットを選択します。

      2. [新規] を選択した場合は、[新規の AWS Secrets Manager シークレット] セクションに次の情報を入力します。

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

        2. クライアント IDクライアントシークレット - クライアント ID とクライアントシークレットを入力します。

    4. [仮想プライベートクラウド (VPC)] - VPC の使用を選択できます。選択する場合は、[サブネット][VPC セキュリティグループ] を追加する必要があります。

    5. ID クローラー — Amazon Kendraの ID クローラーを有効にするかどうかを指定します。ID クローラーは、ドキュメントのアクセスコントロールリスト (ACL) 情報を使用して、ユーザーまたはそのグループのドキュメントへのアクセスに基づいて検索結果をフィルタリングします。ドキュメントの ACL があり、ACL を使用することを選択した場合は、 Amazon Kendraの ID クローラーをオンにして、検索結果のユーザーコンテキストフィルタリングを設定することもできます。それ以外の場合、ID クローラーがオフになっていると、すべてのドキュメントをパブリックに検索できます。ドキュメントのアクセスコントロールを使用し、ID クローラーがオフになっている場合は、代わりに PutPrincipalMapping API を使用してユーザーコンテキストフィルタリング用のユーザーおよびグループのアクセス情報をアップロードできます。

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

      注記

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

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

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

    1. 同期スコープ - インデックスを作成するユーザーの OneDrive データを選択します。最大 10 のユーザーを手動で追加できます。

    2. [追加設定] の場合 - 特定のコンテンツを含めるか除外する正規表現パターンを追加します。最大 100 のパターンを追加できます。

    3. [同期モード] - データソースのコンテンツが変更されたときのインデックスの更新方法を選択します。データソースを Amazon Kendra と初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択しなくても、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。

      • 完全同期: データソースがインデックスと同期するたびに、既存のコンテンツを置き換えて、すべてのコンテンツを新しくインデックス化します。

      • 新しい、変更された同期: データソースがインデックスと同期するたびに、新しいコンテンツと変更されたコンテンツのインデックスのみを作成します。 Amazon Kendra は、コンテンツの変更を追跡するためのデータソースのメカニズムと、前回の同期以降に変更されたコンテンツのインデックスを作成できます。

      • 新規、変更、削除された同期: データソースがインデックスと同期するたびに、新規、変更、削除されたコンテンツのインデックスのみを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツのインデックスを作成できます。

    4. 同期実行スケジュール で、頻度 — データソースコンテンツを同期してインデックスを更新する頻度を選択します。

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

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

    1. デフォルトのデータソースフィールド — インデックスにマッピングする Amazon Kendra 生成されたデフォルトのデータソースフィールドから選択します。

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

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

API

Amazon Kendra に接続するには OneDrive

TemplateConfiguration API を使用してデータソーススキーマの JSON を指定する必要があります。これには、以下の情報を入力する必要があります。

  • データソース — JSON スキーマONEDRIVEV2を使用する場合は、データソースタイプを TemplateConfiguration として指定します。また、CreateDataSourceAPI を呼び出すTEMPLATEときにデータソースを として指定します。

  • テナント ID - Microsoft 365 テナント ID を指定します。テナント ID は Azure Active Directory ポータルのプロパティまたは OAuth アプリケーションで確認できます。

  • 同期モード — データソースコンテンツが変更されたときに Amazon Kendra がインデックスを更新する方法を指定します。データソースを と Amazon Kendra 初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択しなくても、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。以下のいずれかから選択できます。

    • FORCED_FULL_CRAWL データソースがインデックスと同期するたびに既存のコンテンツを置き換え、すべてのコンテンツに新しいインデックスを付けます。

    • FULL_CRAWL は、データソースがインデックスと同期するたびに、新規、変更、削除されたコンテンツのみのインデックスを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをインデックスできます。

    • CHANGE_LOG は、データソースがインデックスと同期するたびに、新しいコンテンツと変更されたコンテンツのみをインデックス化します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをインデックス化できます。

  • シークレット Amazon リソースネーム (ARN) — OneDrive アカウントで作成した認証情報を含む Secrets Manager シークレットの Amazon リソースネーム (ARN) を指定します。

    OAuth 2.0 認証を使用する場合、シークレットは以下のキーを含む JSON 構造に保存されます。

    { "clientId": "client ID", "clientSecret": "client secret" }
  • IAM ロール — を呼び出しCreateDataSourceて、 Secrets Manager シークレットにアクセスするためのアクセス許可を IAM ロールに提供し、 OneDrive コネクタ と に必要なパブリック APIsを呼び出すRoleArnタイミングを指定します Amazon Kendra。詳細については、「 データソースの IAM ロール OneDrive 」を参照してください。

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

  • [仮想プライベートクラウド (VPC)] - VpcConfigurationCreateDataSource を呼び出すタイミングを指定します。詳細については、「を使用する Amazon Kendra ための の設定 Amazon VPC」を参照してください。

  • 包含フィルターと除外フィルター — 特定のファイル、 OneNote セクション、 OneNote ページを含めるか除外するかを指定できます。

    注記

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

  • ID クローラー — Amazon Kendraの ID クローラーを有効にするかどうかを指定します。ID クローラーは、ドキュメントのアクセスコントロールリスト (ACL) 情報を使用して、ユーザーまたはそのグループのドキュメントへのアクセスに基づいて検索結果をフィルタリングします。ドキュメントの ACL があり、ACL を使用することを選択した場合は、 Amazon Kendraの ID クローラーをオンにして、検索結果のユーザーコンテキストフィルタリングを設定することもできます。それ以外の場合、ID クローラーがオフになっていると、すべてのドキュメントをパブリックに検索できます。ドキュメントのアクセスコントロールを使用し、ID クローラーがオフになっている場合は、代わりに PutPrincipalMapping API を使用してユーザーコンテキストフィルタリング用のユーザーおよびグループのアクセス情報をアップロードできます。

  • フィールドマッピング — Amazon Kendra OneDrive コネクタの組み込みインデックスフィールドまたは共通インデックスフィールドのみをマッピングできます。API の制限により、 OneDrive コネクタではカスタムフィールドマッピングを使用できません。詳細については、データソースフィールドのマッピングを参照してください。

設定するその他の重要な JSON キーのリストについては、OneDrive 「 テンプレートスキーマ」を参照してください。