広告枠を募集中 ご相談ください

GleanにおけるGoogle WorkspaceおよびSlack向けエンタープライズデータコネクタとACL権限マッピングの設定ガイド

365Finds Editorial
Wiki 記事 11,430 本収録

あなたの AI で 365 Wiki を使う

下のプロンプトをコピーして、普段使っている AI に貼り付け、そのまま質問してください。

完全版 Skill をダウンロード

まずはプロンプトでお試しください。よく使う場合は完全版 365Wiki Skill をインストールすると、毎回貼り付ける必要がありません。普段使う AI がなければ、Gemini や Microsoft Copilot のウェブ版でも使えます。

エンタープライズ向け社内検索システムや生成AIアシスタントの信頼性は、基盤となるアクセス制御アーキテクチャの厳密さに完全に依存しています。IT管理者がGoogle WorkspaceおよびSlack全体にGleanを展開する際、最優先される要件は明確です。検索結果やAIによる回答が、機密文書、制限されたプライベートチャンネル、あるいは個人のダイレクトメッセージ(DM)を、権限を持たない従業員に決して露出させてはならないということです。

Gleanは、元となるSaaSシステムの上に新しい権限ルールを独自に再定義するのではなく、元のアクセス制御リスト(ACL)を厳格にミラーリングするデュアルエンジンアーキテクチャを採用しています。Google Driveのような非同期ドキュメントリポジトリには**取り込み時パーミッション対応インデックス(Ingestion-time Permission-Aware Indexing)を適用し、リアルタイム性の高いコミュニケーション基盤であるSlackにはフェデレーション型ゼロコピーリアルタイム検索(Slack RTS, Real Time Search)を提供します。これら両基盤を統合するのが、Gleanの自動アイデンティティグラフ(Identity Graph)**であり、企業のIdP(アイデンティティプロバイダー)をもとにユーザーの別名エイリアス、異種システム間のUID、および入れ子(ネスト)構造のグループメンバーシップを単一のエンティティへと解決します。

本ガイドでは、企業のIT管理者およびセキュリティエンジニア向けに、Google WorkspaceおよびSlackのコネクタ設定、アイデンティティおよび権限マッピングの構築、ソース固有の公開性制御の適用、そしてコンプライアンス検証の手順を詳しく解説します。


1. コアアーキテクチャ:デュアルエンジンモデルと統合アイデンティティグラフ

Gleanを安全かつ正確に運用するには、データソースごとの権限処理の違いを把握することが不可欠です。

                           +-------------------------------------+
                           |      エンタープライズIdP (ID管理)    |
                           |   (Okta / Entra ID / Google Identity|
                           +------------------+------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |      Glean 統合アイデンティティ     |
                           |              グラフ                 |
                           |  - プライマリメールと別名エイリアス |
                           |  - ネストされたグループ構造の平坦化 |
                           |  - 異種UID(SlackユーザーID等)解決 |
                           +------------------+------------------+
                                              |
                     +------------------------+------------------------+
                     |                                                 |
                     v                                                 v
  +-------------------------------------+   +-------------------------------------+
  |     Google Workspace コネクタ       |   |           Slack コネクタ体系        |
  | (Google Drive / Gmail / Groups)     |   | (Slack メタデータ + Slack RTS)      |
  +------------------+------------------+   +------------------+------------------+
                     |                                                 |
  - GCPサービスアカウント+ドメイン全体の委任 - 公式Marketplace集中型OAuthアプリ
  - 取り込み時の文書本文およびACLトークン索引 - 定期的な属性クロールとエンゲージメント信号
  - Changes API / Webhookによる差分同期       - ゼロコピーフェデレーション:オンデマンド照会
  - Google Driveの「リンク共有」規則を完全再現- プライベートチャンネル/DMのネイティブ認可
                     |                                                 |
                     +------------------------+------------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |      クエリ時セキュリティフィルター |
                           |  ユーザーの有効プリンシパル ∩       |
                           |  ドキュメントACL + RTSリアルタイム  |
                           +------------------+------------------+
                                              |
                                              v
                           +-------------------------------------+
                           |  ACLを完全に遵守したセキュアな検索  |
                           |        結果およびAI生成回答         |
                           +-------------------------------------+

1. 取り込み時パーミッション対応インデックス(Google Drive)

Google Driveのような静的・非同期ドキュメントストアでは、Gleanはコンテンツの取り込みと同時に、関連するセキュリティプリンシパル(個別ユーザー、Google Groups、全社共有設定など)を収集し、ドキュメントとともにACLトークンセットとしてインデックス化します。ユーザーが検索を実行すると、Gleanのクエリインターセプターは対象ユーザーの身元と所属する全グループから有効なプリンシパル一覧を構築し、検索インデックス上で高速に論理積(Intersection)を計算します。閲覧権限のない文書は、ランキングや要約処理の前に確実に除外されます。

2. フェデレーション型リアルタイム検索(Slack RTS)

Slackの会話は極めて速いペースで更新され、チャンネルメンバーの出入りも頻繁です。バッチ型の定期クロールでは、鮮度とプライベート性の担保が困難です。そのため、Gleanは Slack Real Time Search (RTS) によるフェデレーション構成を採用しています。Gleanのメイン検索インデックスにはSlackのメッセージ本文は保存されません(ゼロコピー)。ユーザーが検索を実行したその瞬間に、Gleanはクエリを発行したユーザーのコンテキストでSlackのネイティブ検索API(assistant.search.context や search.messages)をリアルタイムに呼び出します。ユーザーが参加していないプライベートチャンネルやグループDMのメッセージは、Slack API側で完全にフィルタリングされて返却されません。

3. 統合アイデンティティグラフ(Identity Graph)

権限適用の最大の障壁は、異なるSaaS間でアカウント識別子が異なる点です。例えば同一従業員であっても、Google Workspaceでは alice@company.com、Slackでは固有のユーザーID U12345678 が割り当てられます。GleanはOkta、Microsoft Entra ID、あるいはGoogle Workspaceといった企業マスターIdPと同期し、主要メールアドレス、エイリアス、各システムのUIDを紐付けた包括的なアイデンティティグラフを形成します。これにより、別々のSaaSから取得したACLであっても、同一人物のプリンシパルとして正確に照合されます。


2. Google Workspace コネクタと権限同期の設定手順

Google Workspaceとの統合には、Google Cloud Platform(GCP)のサービスアカウントの作成と、Google Workspace管理コンソールでの「ドメイン全体の委任(Domain-Wide Delegation)」が必要です。これにより、Gleanは指定された管理者としてディレクトリ情報を取得し、ドキュメントレベルセキュリティ(DLS)を維持します。

ステップ1:GCPサービスアカウントの作成

  1. 企業の Google Cloud Console にログインします。
  2. IAM と管理 → サービス アカウント に移動し、サービス アカウントを作成 をクリックします。
  3. アカウント名(例: glean-enterprise-connector)と説明を入力して作成します。
  4. 作成後、該当アカウントの詳細に入り、キー タブから 鍵を追加 → 新しい鍵を作成 を選択し、JSON 形式を選択して安全にダウンロードします。
  5. アカウント詳細画面から、純粋な数値である OAuth 2 クライアント ID(一意の ID) をコピーします。※ドメイン全体の委任にはサービスアカウントのメールアドレスではなく、この数値クライアントIDを使用します。

ステップ2:Google Workspace管理コンソールでドメイン全体の委任を設定

  1. 特権管理者(Super Administrator)権限で Google Workspace 管理コンソール(admin.google.com)にログインします。
  2. セキュリティ → アクセスとデータ管理 → API の制御 → ドメイン全体の委任を管理 に移動します。
  3. 新しく追加 をクリックし、コピーした数値のクライアントIDを貼り付けます。
  4. OAuth スコープ 欄に、カンマ区切りで以下の正確なAPIスコープを入力します(余分な空白を含めないよう注意してください):
    • https://www.googleapis.com/auth/drive.readonly(Google Driveのドキュメント、メタデータ、ACLの取得)
    • https://www.googleapis.com/auth/admin.directory.user.readonly(ユーザープロファイルとステータスの取得)
    • https://www.googleapis.com/auth/admin.directory.group.readonly(Google Groupsとメンバーシップの読み取り)
    • https://www.googleapis.com/auth/apps.groups.settings(グループのアクセス設定の取得)
    • ※GmailやCalendarも対象とする場合は、必要に応じて https://www.googleapis.com/auth/gmail.readonly などを追加。
  5. 承認 をクリックします。

ステップ3:Glean管理コンソールでのコネクタ設定

  1. Glean Admin Console にログインし、Platform → Connectors に移動します。
  2. Google Drive(またはGoogle Workspace)を選択し、Setup をクリックします。
    • ※2026年8月14日以降に作成されたテナントでは、Google Drive、Docs、Sheets、Gmailの連携と読み取りツールが自動化されたガイド付きフローが利用できます。それ以前のテナントでは、ダウンロードしたJSON秘密鍵ファイルをアップロードします。
  3. Directory Admin Email の指定:Google Workspaceの監査レポートやディレクトリ閲覧権限を持つ管理者のメールアドレスを設定します。Gleanはこのアカウントを使用してActivity APIを呼び出し、差分更新の検知やランキング信号を生成します。
  4. クロール範囲と除外ルールの設定:検索対象とする組織部門(OU)や共有ドライブを指定します。

ステップ4:把握すべきGoogle Driveのリンク共有と可視性ルール

Google Driveの柔軟な共有設定は、意図しない社内露出を招くリスクがあります。GleanはGoogle Driveネイティブの動作を極めて忠実に再現しています:


3. Slack Enterprise コネクタとリアルタイム検索(RTS)の設定手順

Slackの接続は、属性クロールとエンゲージメント信号を担う Slack コネクタ と、ライブメッセージの取得とリアルタイム認可を担う Slack Real Time Search (RTS) コネクタ の2段階構成でデプロイします。

ステップ1:デプロイモードの選定と前提条件の確認

ステップ2:基本Slackコネクタ(メタデータおよびシグナル)の設定

  1. Glean Admin Consoleで、Platform → Connectors → Slack(または Slack Enterprise)を選択し、Setup をクリックします。
  2. 収集したSlackドメインおよびEnterprise IDを入力します。
  3. Slack Marketplaceに登録されている中央管理型Glean Slackアプリを承認します。主なスコープは以下の通りです:
    • users:read, users:read.email(システム間のアイデンティティマッピング用)
    • channels:read, groups:read, im:read, mpim:read(チャンネル構造と所属情報の把握用)
    • usergroups:read(Slackユーザーグループの構造把握用)
    • assistant:write, reactions:write, commands(Gleanbotおよび /glean コマンドの実行用)
  4. Slack Enterprise Grid組織全体に対するインストールを完了します。

ステップ3:Slack Real Time Search(RTS)コネクタの設定

  1. 基本コネクタが正常に稼働(Healthy)したことを確認したら、再度 Platform → Connectors から Slack Real Time Search (RTS) を選択します。
  2. Setup をクリックし、OAuth認証を完了します。
  3. APIエンドポイントの動作確認:RTSは以下のSlackネイティブAPIと通信します:
    • assistant.search.context および search.messages:クエリ発生時のリアルタイムメッセージ検索。
    • conversations.history および conversations.replies:ヒットしたメッセージの前後の文脈およびスレッド内容の取得。
    • conversations.members および users.info:ユーザーの所属確認。
  4. ゼロコピー動作の検証:メッセージ本文がGleanのディスクに永続化されないことを確認します。RTSはインメモリでリアルタイムに処理されます。未所属のプライベートチャンネル(例: #exec-salary)の内容は、Slack APIのレスポンス自体に含まれないため、漏洩の余地がありません。

ステップ4:チャンネルの除外リスト(Redlist)と外部チャンネル保護

  1. 機密チャンネルの除外(Redlisting):人事評価、役員会議、監査対応など、検索対象から完全に遮断すべきチャンネルがある場合、Channel ID(C で始まるID)を指定してコネクタの除外リストに登録するか、Gleanサポートに依頼してRedlist化します。
  2. 外部共有チャンネル(Slack Connect)の遮断:Gleanはデフォルトで外部組織が参加しているSlack Connectチャンネルでのボット応答や検索露出を無効化しており、社外への意図せぬ情報漏洩を防ぎます。
  3. プライベート会話・DMの個別認可:ダイレクトメッセージや一部の制限されたプライベート会話について、企業のコンプライアンス方針上ユーザー本人の明示的同意が必要な場合は、ユーザーが自身のSlackトークンを個別に連携できる設計となっています。

4. 権限マッピング、グループの再帰的展開と同期ライフサイクル

アクセス権の剥奪や変更がどのタイミングで検索インデックスに反映されるかを把握することは、セキュリティ運用上極めて重要です。

+-----------------------------------------------------------------------------------+
|                           権限およびデータ同期パスの比較                          |
+-----------------------------------------------------------------------------------+
| ソースシステム| 同期トリガー方式    | 処理タイプ    | 反映レイテンシ / 実行頻度   |
+---------------+---------------------+---------------+-----------------------------+
| Google Drive  | 全量コンテンツスキャン| バッチ処理    | 定期実行(ベースライン構築)|
| Google Drive  | Google Reports API  | 差分更新取得  | 定期実行(数分〜数時間)    |
| Google Drive  | プッシュ Webhooks   | リアルタイム  | 数秒〜数分以内の準リアルタイム|
| Google Groups | Admin Directory API | アイデンティティ| 定期的な全量・差分クロール  |
| Slack 構造    | Slack Users API     | アイデンティティ| 定期的なユーザー・構成取得  |
| Slack イベント| Slack Events API    | Webhook       | 参加/退出時の即時イベント通知|
| Slack メッセージ| Slack RTS API     | ゼロコピー連携| クエリ実行時にリアルタイム(0s)|
+-----------------------------------------------------------------------------------+

ネストされたグループ構造の再帰的展開

多くのエンタープライズでは、Google Groupsが階層化されています(例: Security-Team が Tech-Ops に含まれ、さらにそれが Engineering に含まれる)。Gleanはアイデンティティクロール時に、グループ関係の再帰的な平坦化(Flattening)を実行します。あるGoogle Docのアクセス権が Engineering に付与されている場合、末端の Security-Team のメンバーに対しても、Gleanのアイデンティティ層で適切な認可トークンが自動生成されます。管理者が子グループからユーザーを除外すると、次の差分アイデンティティクロールでトークンが取り消され、検索結果から即座に排除されます。

リアルタイム権限剥奪の挙動


5. 管理コンソールでの検証、監査、およびトラブルシューティング

設定完了後、アクセス制御が正しく機能しているかを客観的に検証する必要があります。Gleanは管理者向けの専用検証ツールを備えています。

1. Document Lookupによる文書アクセス権の検証

  1. Glean Admin Consoleで、Content management → Document lookup に移動します。
  2. Document URL 欄に、検証対象の機密Google DocのURLまたはドキュメントIDを入力します。
  3. User (optional) 欄で、アクセス可否をテストしたい同僚(特定の一般従業員など)を選択します。
  4. Check document をクリックします。
  5. 出力された診断情報を確認します:
    • Last crawled:Gleanが最後にドキュメントのメタデータを取得した時刻。
    • Last indexed:コンテンツおよびACLが検索インデックスに反映された時刻。
    • Document visibility on Glean:文書が通常表示か、管理ルールで非表示になっているか。
    • Document access:選択したユーザーに対して Allowed(許可)または Restricted(制限)が表示され、直接共有、グループ継承、またはリンク共有設定のいずれに基づく認可であるかが詳細に示されます。

2. 検索バーでの絞り込み検証

管理者アカウントまたはテスト用アカウントを使用し、Gleanの検索バーから診断用プレフィックスを実行します:

3. 管理監査ログ(Audit Logs)の確認とエクスポート

Gleanは管理者操作およびセキュリティイベントの監査ログを保持しています:

  1. Users & permissions → Audit logs(または Management → Audit Logs)に移動します。
  2. 日時、実行者、イベント種別(コネクタ設定変更、OAuthスコープ改変、可視性設定の更新など)でフィルタリングします。
  3. CSV形式でエクスポートし、自社のSIEM(SplunkやDatadogなど)と連携させてSOC 2、HIPAA、ISO 27001などの監査要件に対応します。

6. まとめと導入前チェックリスト

Google Driveに対する「取り込み時ACL深度インデックス」と、Slackに対する「フェデレーション型ゼロコピーリアルタイム検索(RTS)」を組み合わせることで、Gleanは高速な検索性能とリアルタイムなアクセス制御の両立を実現しています。これにより、自作RAG(検索拡張生成)システムで生じがちなパーミッションバイパスのリスクを完全に排除できます。

IT管理者向け本番展開前チェックリスト

本ガイドの手順に従って構成することで、企業のゼロトラストセキュリティ基準を厳格に順守しながら、全社的な生産性を飛躍的に高めるセキュアな社内検索環境を実現できます。


参考資料