このページでは、データ取り込みを使用して SharePoint Online を Gemini Enterprise に接続する方法について説明します。
このセクションでは、認証方法と、Gemini Enterprise で SharePoint Online コネクタを作成して SharePoint Online サイトからデータを取り込む手順について説明します。
始める前に
Gemini Enterprise でデータソースのアクセス制御を適用してデータを保護するには、ID プロバイダが構成されていることを確認してください。
Entra アプリケーション登録について
Gemini Enterprise でコネクタを作成する前に、SharePoint への安全なアクセスを有効にするように Entra アプリケーション登録を設定する必要があります。アプリケーションの登録方法は、Gemini Enterprise でコネクタの作成時に選択する認証方法によって決まります。次のいずれかの方法を選択できます。
-
Google が暗号署名されたトークンを使用して SharePoint に安全にアクセスできるようにし、実際のユーザー プリンシパルを不要にします。
Entra に Gemini Enterprise を登録するには、サブジェクト ID が必要です。これは、Gemini Enterprise で SharePoint コネクタを作成するときに使用できます。
Entra にアプリを登録する場合は、次の詳細情報を収集する必要があります。
- インスタンス URI:
- すべての第 1 レベルのサイト:
https://DOMAIN_OR_SERVER.sharepoint.com(例:mydomain.sharepoint.com)。 - 単一サイト:
https://DOMAIN_OR_SERVER.sharepoint.com/[sites/]WEBSITE(例:mydomain.sharepoint.com/sites/sample-site)。
- すべての第 1 レベルのサイト:
- テナント ID
- クライアント ID
これらの詳細情報は、認証を完了して Gemini Enterprise で SharePoint コネクタを作成するために必要になります。
- インスタンス URI:
この方法を使用することをおすすめします。
-
SharePoint API に接続するユーザーをきめ細かく管理できます。
Entra にアプリを登録する場合は、次の詳細情報を収集する必要があります。
- インスタンス URI: 次の形式になります。
- すべての第 1 レベルのサイト:
https://DOMAIN_OR_SERVER.sharepoint.com(例:mydomain.sharepoint.com)。 - 単一サイト:
https://DOMAIN_OR_SERVER.sharepoint.com/[sites/]WEBSITE(例:mydomain.sharepoint.com/sites/sample-site)。
- すべての第 1 レベルのサイト:
- テナント ID
- クライアント ID
- クライアント シークレット
これらの詳細情報は、認証を完了して Gemini Enterprise で SharePoint コネクタを作成するために必要になります。
- インスタンス URI: 次の形式になります。
認証プロセスには、SharePoint アカウントへのサインインが含まれます。
この方法は、SharePoint の設定で 2 要素認証が必要な場合に適しています。
新しい SharePoint ユーザーを作成する必要があるため、ライセンス費用が追加される可能性があります。
-
SharePoint API に接続するユーザーをきめ細かく管理できます。
Entra にアプリを登録する場合は、次の詳細情報を収集する必要があります。
- インスタンス URI: 次の形式になります。
- すべての第 1 レベルのサイト:
https://DOMAIN_OR_SERVER.sharepoint.com(例:mydomain.sharepoint.com)。 - 単一サイト:
https://DOMAIN_OR_SERVER.sharepoint.com/[sites/]WEBSITE(例:mydomain.sharepoint.com/sites/sample-site)。
- すべての第 1 レベルのサイト:
- テナント ID
- クライアント ID
- クライアント シークレット
これらの詳細情報は、認証を完了して Gemini Enterprise で SharePoint コネクタを作成するために必要になります。
- インスタンス URI: 次の形式になります。
認証プロセスには、Entra 管理者から提供されたユーザー名とパスワードの入力が含まれます。
この方法は、SharePoint の設定で 2 要素認証が不要な場合に適しています。
新しい SharePoint ユーザーを作成する必要があるため、ライセンス費用が追加される可能性があります。
SharePoint の権限を付与する際の重要な考慮事項
Google は、特定のタスクを完了するために必要な権限のみを割り当てる最小権限の原則を強く推奨し、使用しています。Google が推奨するベスト プラクティスの詳細については、IAM を安全に使用するをご覧ください。
ただし、Microsoft Entra にアプリケーションを登録して Gemini Enterprise で SharePoint コネクタを作成するには、すべてのサイトに対するフル コントロール権限または選択したサイトに対するフル コントロール権限を付与する必要があります。これは過剰な権限のように見えるかもしれません。これは、Sites.Read.All 権限では Gemini Enterprise が SharePoint ユーザー グループとロールの割り当てを取得できないためです。一方、Sites.FullControl.All と Sites.Selected(fullcontrol を含む)では取得できます。
このため、Gemini Enterprise でコネクタを構成するときに、コネクタがアクセスできるものとアクセスできないものを制限するには、次の操作を行います。
- 単一のサイトへのアクセスを制限する特定のインスタンス URI を指定する
- 同期するサイト内の特定のエンティティを選択します。
必要な権限についてご不明な点がある場合は、Microsoft サポートにお問い合わせいただくことをおすすめします。
連携認証情報を設定する
次の手順に沿って、アプリの登録、権限の付与、認証の確立を行います。連携認証情報の方法を使用することをおすすめします。
このプロセスで発生する可能性のある一般的なエラー メッセージについては、エラー メッセージをご覧ください。
サービス アカウントのクライアント ID を取得します。
- Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。
- ナビゲーション メニューで [データストア] をクリックします。
- [データストアを作成] をクリックします。
- [データソースを選択] ページで、[SharePoint Online] までスクロールするか検索して、サードパーティ ソースを接続します。
- サブジェクト ID をメモします。まだ [続行] はクリックしないでください。このタスクの次の手順を行い、SharePoint Online コネクタを作成するの手順に沿って、 Google Cloud コンソールで手順を完了します。
サブジェクト ID をメモしますが、まだ [続行] はクリックしないでください
Microsoft Entra にアプリを登録します。
- Microsoft Entra 管理センターに移動します。
- メニューで [アプリケーション] セクションを展開し、[アプリの登録] を選択します。
- [アプリの登録] ページで、[新規登録] を選択します。
Microsoft Entra 管理センターで新しいアプリを登録する [アプリケーションの登録] ページでアプリ登録を作成します。
- [サポートされているアカウントの種類] セクションで、[この組織ディレクトリ内のアカウントのみ] を選択します。
- [リダイレクト URI] セクションで [Web] を選択し、リダイレクト URI(
https://vertexaisearch.cloud.google.com/console/oauth/sharepoint_oauth.html)を入力します。 - その他の設定はデフォルトのままにして、[登録] をクリックします。
アカウントの種類を選択し、リダイレクト URI を入力します
クライアント ID とテナント ID をメモします。
アプリの詳細ページ
連携認証情報を追加します。
[証明書とシークレット] > [連携認証情報] > [認証情報を追加] に移動します。
Microsoft Entra に連携認証情報を追加する 次の設定を使用します。
- 連携認証情報のシナリオ: その他の発行元
- 発行元:
https://accounts.google.com - サブジェクト ID: 手順 1.a.v の Google Cloud コンソールでメモしたサブジェクト ID の値を使用します。
- 名前: 一意の名前を指定します。
[追加] をクリックしてアクセス権を付与します。
Google アカウントを Microsoft Entra ID に接続する
API 権限を設定します。
API 権限を設定するアプリを選択します。 次の Microsoft Graph 権限を追加して付与します。サイト制御オプション(
Sites.FullControl.AllとSites.Selected)とプロファイル読み取りオプション(User.Read.AllとUser.ReadBasic.All)から選択できます。連携認証情報の Microsoft Graph 権限
権限 タイプ 説明 理由 GroupMember.Read.Allアプリケーション すべてのグループ メンバーシップを読み取る この権限により、Gemini Enterprise は SharePoint サイトのユーザー グループのメンバーシップを把握できます。 User.Read委任 サインインしてユーザーのプロフィールを読み取る これはデフォルトの権限で、削除しないでください。削除すると、SharePoint にエラーが表示され、この権限を元に戻すよう求められます。
サイト制御オプション オプション 1: Sites.FullControl.Allアプリケーション すべてのサイトに対する完全な制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、すべての SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。すべてのサイトに対する完全な制御権限を付与するのは過剰と思われる場合は、オプション 2:
Sites.Selectedを使用して、きめ細かい制御権限を付与します。オプション 2: Sites.Selectedアプリケーション 選択したサイトに対する制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、選択した SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、Sites.FullControl.Allよりもきめ細かい制御が可能になります。プロフィールの読み取りオプション オプション 1: User.Read.Allアプリケーション すべてのユーザーの完全なプロフィールを読み取る この権限により、Gemini Enterprise は SharePoint コンテンツに対するデータ アクセス制御を把握できます。 オプション 2: User.ReadBasic.Allアプリケーション すべてのユーザーの基本的なプロフィールを読み取る この権限により、Gemini Enterprise は SharePoint コンテンツに対するデータ アクセス制御を把握できます。 次の SharePoint 権限を追加して付与します。
Sites.FullControl.AllとSites.Selectedのいずれかを選択できます。連携認証情報の SharePoint 権限
権限 タイプ 説明 理由 オプション 1: Sites.FullControl.Allアプリケーション すべてのサイトに対する完全な制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、すべての SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。すべてのサイトに対する完全な制御権限を付与するのは過剰と思われる場合は、オプション 2:
Sites.Selectedを使用して、きめ細かい制御権限を付与します。オプション 2: Sites.Selectedアプリケーション 選択したサイトに対する制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは Sites.Read.All権限には含まれていません。また、選択した SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。追加された権限について、その権限が [ステータス] 列に
Grantedとしてリストされ、緑のチェックマーク アイコンが表示されていることを確認します。
Microsoft Graph の API 権限(アプリケーション)をリクエストする
API 権限を確認する 管理者の同意を付与します。同意を付与する方法については、Microsoft Entra ID のドキュメントのアプリケーションに対してテナント全体の管理者の同意を付与するをご覧ください。
OAuth 2.0 の更新トークンとパスワード付与を設定する
OAuth 2.0 メソッドを使用して Entra アプリケーション登録を設定し、SharePoint への安全なアクセスを実現できます。この方法には、アプリの登録の構成、権限の付与、認証の確立の手順が含まれます。
OAuth 2.0 認証を構成するのではなく、連携認証情報を設定することをおすすめします。
次のプロセスを使用して、更新トークンとパスワード付与に OAuth 2.0 認証を使用するように、Entra にアプリケーションを登録できます。SharePoint REST API の権限をきめ細かく制御して、ユーザー アカウントでのリソース アクセスを制限できるようにする必要がある場合には、この方法をおすすめします。
このプロセスで発生する可能性のある一般的なエラー メッセージについては、エラー メッセージをご覧ください。
次の表に、OAuth 2.0 認証方法に推奨される SharePoint のロールを示します。
アプリ登録を作成します。
Entra 管理センターに移動します。
アプリ登録を作成します。
- サポートされているアカウントの種類: この組織ディレクトリ内のアカウントのみ。
- リダイレクト URI:
https://vertexaisearch.cloud.google.com/console/oauth/sharepoint_oauth.html.
クライアント ID とテナント ID をメモします。
クライアント シークレットを追加:
- [証明書とシークレット] > [新しいクライアント シークレット] に移動します。
- シークレット文字列をメモします。
API 権限を設定します。
次の Microsoft Graph 権限を追加して付与します。
Sites.FullControl.AllとSites.Selectedのいずれかを選択できます。OAuth 2.0 認証の Microsoft Graph 権限
権限 タイプ 説明 理由 GroupMember.Read.Allアプリケーション すべてのグループ メンバーシップを読み取る この権限により、Gemini Enterprise は SharePoint サイトのユーザー グループのメンバーシップを把握できます。 User.Read委任 サインインしてユーザーのプロフィールを読み取る これはデフォルトの権限で、削除しないでください。削除すると、SharePoint にエラーが表示され、この権限を元に戻すよう求められます。
オプション 1: Sites.FullControl.Allアプリケーション すべてのサイトに対する完全な制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、すべての SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。オプション 2: Sites.Selectedアプリケーション 選択したサイトに対する制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、選択した SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、Sites.FullControl.Allよりもきめ細かい制御が可能になります。User.Read.Allアプリケーション すべてのユーザーの完全なプロフィールを読み取る この権限により、Gemini Enterprise は SharePoint コンテンツに対するデータ アクセス制御を把握できます。 OAuth 2.0 認証の SharePoint 権限として以下を追加して付与します。
AllSites.FullControlとSites.Selectedのいずれかを選択できます。OAuth 2.0 認証の Sharepoint 権限
権限 タイプ 説明 理由 オプション 1: AllSites.FullControl委任 すべてのサイトに対する完全な制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、すべての SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。オプション 2: Sites.Selected委任 選択したサイトに対する制御権限 この権限により、Gemini Enterprise は SharePoint ユーザー グループとロールの割り当てを取得できます。これらは
Sites.Read.All権限には含まれていません。また、選択した SharePoint サイトのドキュメント、イベント、コメント、添付ファイル、ファイルをインデックスに登録できます。この権限では、AllSites.FullControlよりもきめ細かい制御が可能になります。追加された権限について、その権限が [ステータス] 列に
Grantedとしてリストされ、緑のチェックマーク アイコンが表示されていることを確認します。特定のサイトへのアクセスが制限されている専用のユーザー アカウントを使用します。 このアカウントに、選択したサイトに対するオーナー アクセス権が付与されていることを確認します。
管理者の同意を付与します。同意を付与する方法については、Microsoft Entra ID のドキュメントのアプリケーションに対してテナント全体の管理者の同意を付与するをご覧ください。
選択したサイトに fullcontrol 権限を付与する
Sites.Selected オプションを選択して Microsoft Graph で選択したサイトの制御を許可する場合は、Gemini Enterprise アプリケーションに fullcontrol 権限を付与する必要があります。これを行うには、次のいずれかの方法を使用します。
PowerShell
PnP PowerShell を使用して権限を付与する一般的な構文については、PnP PowerShell を使用して権限を付与するをご覧ください。
FullControl権限を付与する次のコマンドを実行します。Grant-PnPAzureADAppSitePermission -AppId CLIENT_ID -DisplayName DISPLAY_NAME -Permissions FullControl -Site SITE_URL次のように置き換えます。
CLIENT_ID: Microsoft Entra アプリケーションのクライアント ID。SITE_URL: SharePoint サイトのサイト URL(https://example.sharepoint.com/sites/ExampleSite1など)。DISPLAY_NAME: Microsoft Entra アプリケーションの説明。
Microsoft Graph
Microsoft Graph を使用して権限を付与するプロセス全体については、Microsoft Graph を介した権限の付与をご覧ください。
Microsoft Graph エクスプローラーを使用して、次のメソッドを呼び出します。これらのメソッドはサイトのオーナーのみが呼び出すことができます。
サイト ID を取得します。
GET `https://graph.microsoft.com/v1.0/sites/HOSTNAME:SITE_PATH`次のように置き換えます。
HOSTNAME: SharePoint サイトのホスト名(例:example.sharepoint.com)。SITE_PATH: SharePoint サイトのパス(/sites/ExampleSite1や/teams/ExampleSite2など)。
前の手順で取得した ID のサイトに対するアクセス権を
fullcontrolに付与します。次の POST リクエストを送信します。
POST `https://graph.microsoft.com/v1.0/sites/SITE_ID/permissions`次のリクエスト本文を使用します。
{ "roles": ["fullcontrol"], "grantedToIdentities": [{ "application": { "id": "CLIENT_ID", "displayName": "DISPLAY_NAME" } }] }次のように置き換えます。
SITE_ID: 前の手順で受け取った SharePoint サイトのサイト ID。形式はexample.sharepoint.com,48332b69-85ab-0000-00o0-dbb7132863e7,2d165439-0000-0000-b0fe-030b976868a0です。CLIENT_ID: Microsoft Entra アプリケーションのクライアント ID。DISPLAY_NAME: Microsoft Entra アプリケーションの説明。
エラー メッセージ
次の表は、SharePoint と Gemini Enterprise を接続する際に発生する可能性のある一般的なエラー メッセージとその説明を示しています。
| エラーコード | エラー メッセージ |
|---|---|
SHAREPOINT_MISSING_PERMISSION_1 |
必要な REST API ロール(Sites.FullControl.All または Sites.Selected)がありません。委任された権限の場合、AllSites.FullControl または Sites.Selected がありません。 |
SHAREPOINT_MISSING_PERMISSION_2 |
必要な Graph API ロール(Sites.FullControl.All または Sites.Selected)がありません。 |
SHAREPOINT_MISSING_PERMISSION_3 |
必要な Graph API ロール(GroupMember.Read.All)がありません。 |
SHAREPOINT_MISSING_PERMISSION_4 |
必要な Graph API ロール(User.Read.All または User.ReadBasic.All)がありません。 |
SHAREPOINT_INVALID_SITE_URI |
Graph API アクセス トークンを取得できませんでした。考えられる原因: クライアント ID またはシークレット値が無効であるか、連携認証情報がない。 |
SHAREPOINT_INVALID_AUTH |
Graph API アクセス トークンを取得できませんでした。考えられる原因: クライアント ID またはシークレット値が無効であるか、連携認証情報がない。 |
SHAREPOINT_INVALID_JSON |
JSON コンテンツを解析できませんでした。 |
SHAREPOINT_TOO_MANY_REQUESTS |
SharePoint に送信された HTTP リクエストが多すぎます。429 HTTP レスポンスを受信しました。 |
SharePoint Online コネクタを作成する
Entra でアプリケーションを登録したら、 Google Cloud コンソールで SharePoint コネクタを作成できます。
リアルタイム同期を有効にする
リアルタイム同期では、ドキュメント エンティティのみが同期され、ID エンティティに関連するデータは同期されません。次の表に、リアルタイム同期でサポートされているドキュメント イベントを示します。
| SharePoint エンティティ | 作成 | 更新 | 削除 | 権限の変更 |
|---|---|---|---|---|
| 添付ファイル | ||||
| コメント | ||||
| イベント | ||||
| ファイル | ||||
| ページ |
データストアのリアルタイム同期を有効にする手順は次のとおりです。
Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。
ナビゲーション メニューで [データストア] をクリックします。
リアルタイム同期を有効にする SharePoint データストアの名前をクリックします。
データストアの [データ] ページで、[コネクタの状態] が [アクティブ] に変わるまで待ちます。
[リアルタイム同期] フィールドで、[表示 / 編集] をクリックします。
リアルタイム同期の設定を表示、編集します。 [リアルタイム同期を有効にする] 切り替えボタンをクリックしてオンにします。
[クライアント シークレット] に値を指定します。この値は、SharePoint Webhook イベントの検証に使用されます。20 文字の文字列を使用することをおすすめします。
リアルタイム同期を有効にして、クライアント シークレットを指定します。 [保存] をクリックします。
[リアルタイム同期] フィールドが [実行中] に変わるまで待ちます。
検索エンジンをテストする
検索エンジンを構成したら、その機能をテストします。ユーザーのアクセス権に基づいて正確な結果が返されることを確認します。
ウェブアプリを有効にします。
- アプリ統合の構成に移動し、[ウェブアプリを有効にする] をオンにします。
ウェブアプリをテストする:
ウェブアプリのリンクの横にある [開く] をクリックし、Workforce プールのユーザーでログインします。
検索結果が、ログインしたユーザーがアクセスできるアイテムに制限されていることを確認します。
Workforce プールを構成する
Workforce プールを使用すると、 Google Cloud コンソール内で Azure や Okta などの外部 ID プロバイダのユーザーを管理および認証できます。Workforce プールを構成し、ユーザーがシームレスにアクセスできるようにウェブアプリを有効にするには、次の操作を行います。
適切な設定マニュアルに沿って、 Google Cloud で組織レベルの Workforce プールを作成します。
アプリを作成するリージョンの [Gemini Enterprise] > [設定] で、Workforce プールを構成します。
次のステップ
データストアをアプリに接続するには、アプリを作成するの手順に沿ってアプリを作成し、データストアを選択します。
アプリとデータストアが設定された後に検索結果がどのように表示されるかをプレビューするには、検索結果をプレビューするをご覧ください。