Microsoft OneDrive をデータ取り込みと接続する

このページでは、データ取り込みを使用して Microsoft OneDrive を Gemini Enterprise に接続する方法について説明します。

以下の手順に沿って、OneDrive からデータを同期します。

データソースを設定してデータを初めてインポートすると、データストアは設定時に選択した頻度でそのソースからデータを同期します。

制限事項

増分同期では、コピー移動名前の変更などのフォルダレベルの操作は検出されません。

始める前に

Gemini Enterprise でデータソースのアクセス制御を適用してデータを保護するには、ID プロバイダが構成されていることを確認してください。

Microsoft Entra ID アプリケーション登録について

Gemini Enterprise でコネクタを作成する前に、OneDrive に安全にアクセスできるように Microsoft Entra ID アプリケーション登録を設定する必要があります。アプリケーションの登録方法は、Gemini Enterprise でコネクタの作成時に選択する認証方法によって決まります。次のいずれかの方法を選択できます。

  • 連携認証情報:

    • Google が暗号署名されたトークンを使用して OneDrive に安全にアクセスできるようにし、実際のユーザー プリンシパルを不要にします。

    • Entra に Gemini Enterprise を登録するには、サブジェクト ID が必要です。これは、Gemini Enterprise で OneDrive コネクタを作成するときに使用できます。

    • Entra ID にアプリを登録する場合は、次の詳細情報を収集する必要があります。

      • インスタンス URI:
        • すべての第 1 レベルのサイト: https://DOMAIN_OR_SERVER.onedrive.com (例: mydomain.onedrive.com)。
        • 単一サイト: https://DOMAIN_OR_SERVER.onedrive.com/[sites/]WEBSITE (例: mydomain.onedrive.com/sites/sample-site)。
      • テナント ID
      • クライアント ID

      これらの詳細情報は、認証を完了して Gemini Enterprise で OneDrive コネクタを作成するために必要になります。

    • この方法を使用することをおすすめします。

  • OAuth 2.0 更新トークン:

    • OneDrive API に接続するユーザーをきめ細かく管理できます。

    • Entra ID にアプリを登録する場合は、次の詳細情報を収集する必要があります。

      • インスタンス URI: 次の形式になります。
        • すべての第 1 レベルのサイト: https://DOMAIN_OR_SERVER.onedrive.com (例: mydomain.onedrive.com)。
        • 単一サイト: https://DOMAIN_OR_SERVER.onedrive.com/[sites/]WEBSITE (例: mydomain.onedrive.com/sites/sample-site)。
      • テナント ID
      • クライアント ID
      • クライアント シークレット

      これらの詳細情報は、認証を完了して Gemini Enterprise で OneDrive データストアを作成するために必要になります。

    • 認証プロセスには、OneDrive アカウントへのサインインが含まれます。

    • この方法は、OneDrive の設定で 2 要素認証が必要な場合に適しています。

    • 新しい OneDrive ユーザーを作成する必要があるため、ライセンス費用が追加される可能性があります。

  • OAuth 2.0 パスワードの権限付与:

    • OneDrive API に接続するユーザーをきめ細かく管理できます。

    • Entra ID にアプリを登録する場合は、次の詳細情報を収集する必要があります。

      • インスタンス URI:
        • すべての第 1 レベルのサイト: https://DOMAIN_OR_SERVER.onedrive.com (例: mydomain.onedrive.com)。
        • 単一サイト: https://DOMAIN_OR_SERVER.onedrive.com/[sites/]WEBSITE (例: mydomain.onedrive.com/sites/sample-site)。
      • テナント ID
      • クライアント ID
      • クライアント シークレット

      これらの詳細情報は、認証を完了して Gemini Enterprise で OneDrive データストアを作成するために必要になります。

    • 認証プロセスには、Entra ID 管理者から提供されたユーザー名とパスワードの入力が含まれます。

    • この方法は、OneDrive の設定で 2 要素認証が不要な場合に適しています。

    • この方法では、新しい OneDrive ユーザーを作成する必要があります。これにより、ライセンス費用が追加される可能性があります。

連携認証情報を設定する

次の手順に沿って、アプリの登録、権限の付与、認証の確立を行います。連携認証情報の方法を使用することをおすすめします。

このプロセスで発生する可能性のある一般的なエラー メッセージについては、エラー メッセージをご覧ください。

  1. サービス アカウントのクライアント ID を取得します。

    1. Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。
    2. ナビゲーション メニューで [データストア] をクリックします。
    3. [データストアを作成] をクリックします。
    4. [データソースを選択] ページで、[OneDrive] までスクロールするか検索して、サードパーティ ソースを接続します。
    5. サブジェクト ID をメモします。まだ [続行] はクリックしないでください。このタスクの次の手順を行い、OneDrive コネクタを作成するの手順に沿って、 Google Cloud コンソールで手順を完了します。
  2. Entra ID にアプリを登録します。

    1. Microsoft Entra 管理センターに移動します。
    2. メニューで [アプリケーション] セクションを展開し、[アプリの登録] を選択します。
    3. [アプリの登録] ページで、[新規登録] を選択します。

      Entra に新しいアプリを登録する
      Microsoft Entra 管理センターで新しいアプリを登録する

    4. [アプリケーションの登録] ページでアプリ登録を作成します。

      • [サポートされているアカウントの種類] セクションで、[この組織ディレクトリ内のアカウントのみ] を選択します。
      • [リダイレクト URI] セクションで [Web] を選択し、リダイレクト URI(https://vertexaisearch.cloud.google.com/console/oauth/onedrive_oauth.html)を入力します。
      • 他の設定はデフォルト値のままにして、[登録] をクリックします。

      この組織ディレクトリ内のアカウントのみを登録する
      アカウントの種類を選択し、リダイレクト URI を入力します

    5. クライアント IDテナント ID をメモします。

      アプリの詳細ページの概要
      アプリの詳細ページ

  3. 連携認証情報を追加します。

    1. [証明書とシークレット] > [連携認証情報] > [認証情報を追加] に移動します。

      Entra に連携認証情報を追加する
      Microsoft Entra に連携認証情報を追加する

    2. 次の設定を使用します。

      • 連携認証情報のシナリオ: その他の発行元

      • 発行元: https://accounts.google.com

      • サブジェクト ID: 前の手順でメモしたサブジェクト ID の値を使用します。

      • 名前: 一意の名前を指定します。

    3. [追加] をクリックしてアクセス権を付与します。

      Google アカウントを Microsoft Entra ID に接続する
      Google アカウントを Microsoft Entra ID に接続する

  4. API 権限を設定します。

    API 権限を設定するアプリを選択する
    API 権限を設定するアプリを選択します。

    1. 次の Microsoft Graph 権限を追加して付与します。サイト制御オプション(Sites.FullControl.AllSites.Selected)とプロファイル読み取りオプション(User.Read.AllUser.ReadBasic.All)から選択できます。

      連携認証情報の Microsoft Graph 権限

      権限 タイプ 説明 理由
      GroupMember.Read.All アプリケーション すべてのグループ メンバーシップを読み取る この権限により、Gemini Enterprise は OneDrive サイトのユーザー グループのメンバーシップを把握できます。
      User.Read 委任 サインインしてユーザーのプロフィールを読み取る

      これはデフォルトの権限で、削除しないでください。削除すると、OneDrive にエラーが表示され、この権限を元に戻すよう求められます。

      Files.Read.All アプリケーション すべてのサイト コレクション内のファイルを読み取る

      この権限により、Gemini Enterprise はすべてのサイト コレクション内のすべてのファイルを読み取ることができます。

      サイト制御オプション
      オプション 1: Sites.FullControl.All アプリケーション すべてのサイトに対する完全な制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、すべての OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。

      すべてのサイトに対する完全な制御権限を付与するのは過剰と思われる場合は、オプション 2: Sites.Selected を使用して、きめ細かい制御権限を付与します。

      オプション 2: Sites.Selected アプリケーション 選択したサイトに対する制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、選択した OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、Sites.FullControl.All よりもきめ細かい制御が可能になります。

      プロフィールの読み取りオプション
      オプション 1: User.Read.All アプリケーション すべてのユーザーの完全なプロフィールを読み取る この権限により、Gemini Enterprise は OneDrive コンテンツに対するデータ アクセス制御を把握できます。
      オプション 2: User.ReadBasic.All アプリケーション すべてのユーザーの基本的なプロフィールを読み取る この権限により、Gemini Enterprise は OneDrive コンテンツに対するデータ アクセス制御を把握できます。
    2. 次の OneDrive 権限を追加して付与します。Sites.FullControl.AllSites.Selected のいずれかを選択できます。

      連携認証情報の OneDrive 権限

      権限 タイプ 説明 理由
      オプション 1: Sites.FullControl.All アプリケーション すべてのサイトに対する完全な制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、すべての OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。

      すべてのサイトに対する完全な制御権限を付与するのは過剰と思われる場合は、オプション 2: Sites.Selected を使用して、きめ細かい制御権限を付与します。

      オプション 2: Sites.Selected アプリケーション 選択したサイトに対する制御権限 この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、選択した OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。
    3. 追加された権限について、その権限が [ステータス] 列に Granted としてリストされ、緑のチェックマーク アイコンが表示されていることを確認します。

  5. 管理者の同意を付与します。同意を付与する方法については、Microsoft Entra ID のドキュメントのアプリケーションに対してテナント全体の管理者の同意を付与するをご覧ください。

OAuth 2.0 の更新トークンとパスワード付与を設定する

OAuth 2.0 メソッドを使用して Entra ID アプリケーション登録を設定し、OneDrive への安全なアクセスを実現できます。この方法には、アプリの登録の構成、権限の付与、認証の確立の手順が含まれます。

次のプロセスを使用して、更新トークンとパスワード付与に OAuth 2.0 認証を使用するように、Entra ID にアプリケーションを登録できます。OneDrive REST API の権限をきめ細かく制御して、ユーザー アカウントでのリソース アクセスを制限できるようにする必要がある場合には、この方法をおすすめします。

このプロセスで発生する可能性のある一般的なエラー メッセージについては、エラー メッセージをご覧ください。

次の表に、OAuth 2.0 認証方法に推奨される OneDrive のロールを示します。

  1. アプリ登録を作成します。

    1. Entra ID 管理センターに移動します。

    2. アプリ登録を作成します。

      • サポートされているアカウントの種類: この組織ディレクトリ内のアカウントのみ
      • リダイレクト URI: https://vertexaisearch.cloud.google.com/console/oauth/onedrive_oauth.html.
    3. クライアント IDテナント ID をメモします。

  2. クライアント シークレットを追加:

    1. [証明書とシークレット] > [新しいクライアント シークレット] に移動します。
    2. シークレット文字列をメモします。
  3. API 権限を設定します。

    1. 次の Microsoft Graph 権限を追加して付与します。Sites.FullControl.AllSites.Selected のいずれかを選択できます。

      OAuth 2.0 認証の Microsoft Graph 権限

      権限 タイプ 説明 理由
      GroupMember.Read.All アプリケーション すべてのグループ メンバーシップを読み取る この権限により、Gemini Enterprise は OneDrive サイトのユーザー グループのメンバーシップを把握できます。
      User.Read 委任 サインインしてユーザーのプロフィールを読み取る

      これはデフォルトの権限で、削除しないでください。削除すると、OneDrive にエラーが表示され、この権限を元に戻すよう求められます。

      オプション 1: Sites.FullControl.All アプリケーション すべてのサイトに対する完全な制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、すべての OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。

      オプション 2: Sites.Selected アプリケーション 選択したサイトに対する制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、選択した OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、Sites.FullControl.All よりもきめ細かい制御が可能になります。

      User.Read.All アプリケーション すべてのユーザーの完全なプロフィールを読み取る この権限により、Gemini Enterprise は OneDrive コンテンツに対するデータ アクセス制御を把握できます。
    2. OAuth 2.0 認証の OneDrive 権限として以下を追加して付与します。AllSites.FullControlSites.Selected のいずれかを選択できます。

      OAuth 2.0 認証の OneDrive 権限

      権限 タイプ 説明 理由
      オプション 1: AllSites.FullControl 委任 すべてのサイトに対する完全な制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、すべての OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。

      オプション 2: Sites.Selected 委任 選択したサイトに対する制御権限

      この権限により、Gemini Enterprise は OneDrive ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All 権限には含まれていません。また、選択した OneDrive サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、AllSites.FullControl よりもきめ細かい制御が可能になります。

    3. 追加された権限について、その権限が [ステータス] 列に Granted としてリストされ、緑のチェックマーク アイコンが表示されていることを確認します。

      API 権限を確認する
      API 権限を確認する

    4. 特定のサイトへのアクセスが制限されている専用のユーザー アカウントを使用します。 このアカウントに、選択したサイトに対するオーナー アクセス権が付与されていることを確認します。

  4. 管理者の同意を付与します。同意を付与する方法については、Microsoft Entra ID のドキュメントのアプリケーションに対してテナント全体の管理者の同意を付与するをご覧ください。

エラー メッセージ

次の表は、OneDrive と Gemini Enterprise を接続する際に発生する可能性のある一般的なエラー メッセージとその説明を示しています。

エラーコード エラー メッセージ
ONEDRIVE_MISSING_PERMISSION_1 必要な REST API ロール(Sites.FullControl.All または Sites.Selected)がありません。委任された権限の場合、AllSites.FullControl または Sites.Selected がありません。
ONEDRIVE_MISSING_PERMISSION_2 必要な Graph API ロール(Sites.FullControl.All または Sites.Selected)がありません。
ONEDRIVE_MISSING_PERMISSION_3 必要な Graph API ロール(GroupMember.Read.All)がありません。
ONEDRIVE_MISSING_PERMISSION_4 必要な Graph API ロール(User.Read.All または User.ReadBasic.All)がありません。
ONEDRIVE_INVALID_SITE_URI Graph API アクセス トークンを取得できませんでした。考えられる原因: クライアント ID またはシークレット値が無効であるか、連携認証情報がない。
ONEDRIVE_INVALID_AUTH Graph API アクセス トークンを取得できませんでした。考えられる原因: クライアント ID またはシークレット値が無効であるか、連携認証情報がない。
ONEDRIVE_INVALID_JSON JSON コンテンツを解析できませんでした。
ONEDRIVE_TOO_MANY_REQUESTS OneDrive に送信された HTTP リクエストが多すぎます。429 HTTP レスポンスを受信しました。
  1. マニフェスト ファイル:

    1. [マニフェスト] タブに移動します。
    2. requiredResourceAccess[] の間のコンテンツを削除します。

      manifest-file
      マニフェスト ファイルを編集する

    3. かっこの中に次の JSON を貼り付けます。

      {
       "resourceAppId": "00000003-0000-0000-c000-000000000000",
       "resourceAccess": [
         {
           "id": "01d4889c-1287-42c6-ac1f-5d1e02578ef6",
           "type": "Role"
         },
         {
           "id": "5b567255-7703-4780-807c-7be8301ae99b",
           "type": "Role"
         },
         {
           "id": "df021288-bdef-4463-88db-98f22de89214",
           "type": "Role"
         }
       ]
      }
      
    4. API 権限に戻ります。

    5. 必要な権限がすべて存在することを確認します。

    6. 管理者の同意を付与します。

OneDrive コネクタを作成する

Console

Google Cloud コンソールを使用して OneDrive から Gemini Enterprise にデータを同期する手順は次のとおりです。

  1. Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。

    Gemini Enterprise

  2. ナビゲーション メニューで [データストア] をクリックします。

  3. [データストアを作成] をクリックします。

  4. [データソースを選択] ページで、[OneDrive] までスクロールするか検索して、サードパーティ ソースを接続します。

  5. [認証の設定] で、使用する認証方法を選択します。

    1. 認証情報を入力します。

    2. [続行] をクリックします。

      onedrive-ingestion-auth-methods
      認証方法を選択し、認証情報を入力します。

  6. 同期する次のエンティティを選択します。

    • ファイル
  7. インデックスからエンティティをフィルタで除外したり、インデックスにエンティティが含まれるようにするには、[フィルタ] をクリックします。

    • fileName はファイル名のみに一致します。
    • filePath は完全な Microsoft Graph API パスである必要があります。通常は /drive/root: が接頭辞として付加されます。たとえば、OneDrive の直接リンクが https:/example-my.onedrive.com/personal/user_example_com/Documents/folder1/folder2 の場合、filePath/drive/root:/folder1/folder2 です。

    onedrive-filters
    エンティティを含めるか除外するフィルタを指定する

  8. [続行] をクリックします。

  9. [完全同期] の [同期頻度] と、[増分データ同期] の [増分同期頻度] を選択します。詳細については、同期スケジュールをご覧ください。

    エンティティ データと ID データの完全同期を個別にスケジュール設定する場合は、[完全同期] のメニューを開き、[カスタム オプション] を選択します。

    データの完全同期のカスタム オプション。
    エンティティの完全同期と ID の完全同期に個別のスケジュールを設定します。
  10. データストアのリージョンを選択します。

  11. データストアの名前を入力します。

  12. [作成] をクリックします。Gemini Enterprise によってデータストアが作成され、[データストア] ページにデータストアが表示されます。

  13. 取り込みのステータスを確認するには、[データストア] ページに移動し、データストア名をクリックして、[データ] ページで詳細を表示します。 データの同期が開始されると、[コネクタの状態] が [作成中] から [実行中] に変わります。取り込みが完了すると、ステータスが [アクティブ] に変わり、データソースへの接続がセットアップされ、次回のスケジュール設定された同期を待機していることを示します。

    データのサイズに応じて、取り込みには数分から数時間かかることがあります。

リアルタイム同期を有効にする

データストアのリアルタイム同期を有効にする手順は次のとおりです。

  1. Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。

    Gemini Enterprise

  2. ナビゲーション メニューで [データストア] をクリックします。

  3. リアルタイム同期を有効にする OneDrive データストアの名前をクリックします。

  4. データストアの [データ] ページで、[コネクタの状態] が [アクティブ] に変わるまで待ちます。

  5. [リアルタイム同期] フィールドで、[表示 / 編集] をクリックします。

    リアルタイム同期の設定を表示、編集する
    リアルタイム同期の設定を表示、編集します。

  6. [リアルタイム同期を有効にする] 切り替えボタンをクリックしてオンにします。

  7. [クライアント シークレット] に値を指定します。この値は、OneDrive Webhook イベントの検証に使用されます。20 文字の文字列を使用することをおすすめします。

    リアルタイム同期を有効にしてクライアント シークレットを指定する
    リアルタイム同期を有効にして、クライアント シークレットを指定します。

  8. [保存] をクリックします。

    [リアルタイム同期] フィールドが [実行中] に変わるまで待ちます。

エラーコード

次の表に、OneDrive のエラーコードと説明を示します。

エラーコード 説明
ONEDRIVE_MISSING_PERMISSION_1 アプリケーションに Graph API に必要な Files.Read.All ロールがありません。
ONEDRIVE_MISSING_PERMISSION_2 アプリケーションに Graph API に必要な Group.Read.All ロールがありません。
ONEDRIVE_MISSING_PERMISSION_3 アプリケーションに Graph API に必要な User.Read.All ロールまたは User.ReadBasic.All ロールがありません。
ONEDRIVE_INVALID_SITE_URI インスタンスの URL が無効です。
ONEDRIVE_INVALID_AUTH Graph API アクセス トークンの取得中にエラーが発生しました。これは、クライアント ID またはシークレット値が無効であるか、連携認証情報がないことが原因である可能性があります。
ONEDRIVE_UNCATEGORIZED_ERROR ファイルに無効な ACL が存在するか、ACL が存在しません。
ONEDRIVE_TOO_MANY_REQUESTS OneDrive に送信される HTTP リクエストが多すぎます。HTTP 429 レスポンスを受信しました。

次のステップ

  • データストアをアプリに接続するには、アプリを作成するの手順に沿ってアプリを作成し、データストアを選択します。

  • アプリとデータストアが設定された後に検索結果がどのように表示されるかをプレビューするには、検索結果をプレビューするをご覧ください。