お使いの環境向けに Microsoft 365 を設定する
Microsoft 365 を AI-Corporate 環境に接続する方法は 2 つあります。まず、組織に合った方法を選択してください。
| ルート | いつ使うか | 実施内容 |
|---|---|---|
| AI-Corporate の中央アプリ(標準) | Outlook メール、Outlook カレンダー、Teams、SharePoint/OneDrive への個人接続。 | Entra 管理者が Microsoft 365 を接続 で組織の同意を付与します。その後、この記事の手順 5 のとおりに連携を有効化します。独自アプリ、クライアント シークレット、Identity Provider は不要です。 |
| 独自の Entra アプリ | SharePoint フォルダーをナレッジベースに一元的に取り込みたい、従業員がすでに独自アプリで Microsoft にログインしている、またはアプリを自分で管理したい場合。 | この記事を手順 1 から進めてください。 |
組織がすでに独自アプリで Microsoft にサインインしている場合(環境の Microsoft ID 欄が入力済み)、すべての接続はその独自アプリを使用します。その場合、中央ルートは適用されません。
独自の Entra アプリ
独自の Microsoft Entra アプリを使うと、組織は Microsoft でサインイン と Outlook、Teams、SharePoint の両方で同じアプリを使用できます。どの連携と書き込み操作を利用可能にするかを中央で管理できます。利用者はその後、設定 → Tools → 接続 で個人接続をオン/オフするだけです。
個人連携は、OpenAI、Claude、Gemini、Mistral の対応モデルで動作します。選択したモデルは tools を使用できる必要があります。個人接続では、アクセス権はサインイン中の Microsoft ユーザーの権限に従います。組織の同意は全従業員を自動的にサインインさせるものではなく、AI にすべてのメールボックスへの独立したアクセスを与えるものでもありません。中央の SharePoint ナレッジベースは、この記事の後半で説明する別個のアプリ権限と既存のナレッジベース権限を使用します。
必要なもの
- Microsoft Entra ID を備えた Microsoft 365 組織と、必要なサービスへアクセスできるアカウント。
- アプリを登録し、選択した Microsoft Graph 権限への組織の同意 を付与できる管理者。Azure サブスクリプション ロールだけでは不十分で、Entra ロールがこの同意を許可している必要があります。
- 連携を利用可能にするための、適切な AI 環境での管理権限。
- Google Cloud Identity Platform で、この AI 環境の Microsoft Identity Provider を設定できるプラットフォーム管理者。
- 独自の Microsoft ディレクトリ内の app registration、client secret、そしてブランドに対応する 2 つのリダイレクト URL。
Microsoft でのサインインと Microsoft データへのアクセスは別機能です。Microsoft ログインが動作するだけでは、Outlook、Teams、SharePoint が設定済みという意味ではありません。
1. 組織用アプリを 1 つ登録する
Microsoft Entra 管理センター を開き、App registrations → New registration に移動します。認識しやすい名前、たとえば AI-Corporate – あなたの組織名 を使用します。独自組織の場合は Accounts in this organizational directory only (Single tenant) を選択してください。
Overview の次の情報を保存します。
| 項目 | 用途 |
|---|---|
| Directory (tenant) ID | 組織の Microsoft ディレクトリ。AI 環境の Microsoft ID フィールドに入ります。 |
| Application (client) ID | 登録したアプリ。Microsoft Identity Provider に使います。 |
この 2 つの ID は異なります。Microsoft ID には client ID や Firebase tenant ID を入力しないでください。
2. 正しいリダイレクト URL を設定する
Authentication → Add a platform → Web に進みます。ご利用のブランドに対して、以下の URL を両方、表示どおり正確に追加してください。1 つ目はサインインを処理し、2 つ目は work account 連携の同意を処理します。
| ブランド | Microsoft でサインイン | work account 連携 |
|---|---|---|
| AI-School | https://ai-school-pro.firebaseapp.com/__/auth/handler | https://europe-west1-ai-school-pro.cloudfunctions.net/completeConnectorOAuth |
| AI-Corporate | https://ai-corporate.firebaseapp.com/__/auth/handler | https://europe-west1-ai-corporate.cloudfunctions.net/completeConnectorOAuth |
| AI-Public | https://ai-public-pro.firebaseapp.com/__/auth/handler | https://europe-west1-ai-public-pro.cloudfunctions.net/completeConnectorOAuth |
お使いの環境が稼働しているブランドの URL を使ってください。組織名や tenant ID をこれらの URL に埋め込む必要はありません。サイト URL、ダッシュボード URL、.web.app URL はこれらのコールバックの代わりにはなりません。ブラウザから連携を使う場合でも、Web として登録してください。暗黙的トークン発行や public-client-flow を有効にする必要はありません。
3. client secret を作成し、権限を付与する
Certificates & secrets → Client secrets → New client secret に進みます。適切な有効期間を選び、表示されたら Value を安全に保管してください。値は、プラットフォーム管理用に合意済みの安全な経路で提供します。Secret ID は client secret ではありません。期限を管理し、期限前に secret を更新してください。Identity Provider 側でも同様です。
その後、API permissions → Add a permission → Microsoft Graph → Delegated permissions に進みます。組織が提供する連携と操作に必要な権限だけを追加してください。
| 連携 | 読み取り権限 | 書き込み用の追加権限 |
|---|---|---|
| プロフィール / 基本 | User.Read; サインイン フローでは openid, profile, email, offline_access も要求されます | なし |
| Outlook Mail | Mail.Read | 下書き: Mail.ReadWrite. 送信: Mail.Send. |
| Outlook カレンダー | Calendars.Read | 書き込み: Calendars.ReadWrite. |
| Microsoft Teams | Chat.Read, ChannelMessage.Read.All | 投稿: Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Send. |
| SharePoint / OneDrive | Sites.Read.All, Files.Read.All | この work account 連携では書き込み操作は提供されません。 |
Mail.ReadWrite では送信権限はありません。送信には別途 Mail.Send が必要です。Teams への投稿は、選択したチャネルへのテキスト メッセージの投稿であり、プライベート チャット メッセージではありません。この連携では Application permissions ではなく Delegated permissions を使用します。名前に All が含まれる権限でも、委任アクセスはユーザーのアクセス範囲に制限されます。
Grant admin consent for uw organisatie をクリックし、選択した権限が付与済みとして表示されていることを確認します。これにより、従業員は自分で組織権限を付与することなく承認済みのアクセスを使えます。Microsoft は、ポリシーに応じてサインイン、MFA、再同意を求める場合があります。
4. 2 か所でアプリを AI 環境に接続する
プラットフォーム管理者に正しい環境を選択してもらい、次の設定を行います。
- Admin → 環境 → Tenant で、ログイン方法 Microsoft を有効にし、Microsoft ID に Directory (tenant) ID を入力します。
- Google Cloud → Identity Platform → 該当 tenant → Identity providers → Microsoft で、プロバイダを有効にし、同じ Entra アプリの Application (client) ID と client secret Value を入力します。
Identity Provider は、別の組織や一般的な Admin 環境ではなく、AI 環境の Firebase/Identity Platform tenant に属します。work account 連携は、このプロバイダのアプリを再利用します。client secret はユーザー設定、チャットメッセージ、通常の環境フィールドには入れません。
組織名、ブランド、Directory ID、client ID、secret 値、期限、希望する連携/権限を、プラットフォーム管理者に安全な経路で渡してください。アプリ ID だけでは不十分です。
5. 連携と書き込み操作を有効化する
管理環境 → Tools → MCP を開きます。Suite-snelkoppelingen で連携 Microsoft 365 をオンにします。Microsoft の行が表示されます。suite 全体をオフにすると、これらの行は非表示のままになります。
各連携ごとに利用可否を選択します。Schrijfacties 列では、次を個別に選びます。
- Outlook Mail → Concepten: 下書きを作成・変更する。
- Outlook Mail → Verzenden: 既存の下書きを実際に送信する。
- Outlook Agenda → Schrijven: 予定を作成・変更する。
- Microsoft Teams → Posten: 選択した Teams チャネルにテキスト メッセージを投稿する。
Opslaan をクリックします。書き込み操作は、連携と対応する管理権限の両方が有効で、Microsoft が必要な権限を付与し、かつユーザーがその接続を個別に有効化している場合にのみ動作します。ユーザーに追加の書き込み権限フォームは表示されません。
この設定は、ブランドのバックエンドでもサポートされている必要があります。この書き込み拡張は 2026 年 10 月 7 日に OnderwijsSupport 向けに公開され、AI-Corporate でテストされています。これは、AI-School、AI-Public、その他の環境で同じ拡張がすでに有効であることを自動的に意味しません。書き込み操作が見当たらない場合は、プラットフォーム管理者に確認してください。
6. 構成を確認する
ユーザーに正しい AI 環境へサインインしてもらい、Microsoft 連携の使用 に従って目的の連携を有効にします。Microsoft が独自 Entra アプリ名を表示しているか確認してください。
まず、わかりやすい下書きと参加者なしの予定をテストします。Outlook で保存された項目を確認してください。次に、合意済みのテスト受信者への送信と、合意済みのテスト チャネルへの Teams 投稿をテストします。参加者付きの予定は、招待や更新を送信する場合があります。送信が受け付けられても、配信完了とは限りません。
権限を拡張すると、連携はトークンの更新を試みます。Microsoft が再サインインや同意を要求する場合は、ユーザーに既存の接続を再接続してもらってください。2 つ目のアプリや別のユーザー設定を作成する必要はありません。
問題の解決
| 問題 | 確認事項 |
|---|---|
AADSTS50011 / redirect mismatch | 両方のコールバックが、正しいブランドで Web として正確に登録されているか。 |
| 同意時に別のアプリ名が表示される | 正しい AI 環境、Directory ID、tenant 固有の Microsoft Identity Provider。続けて再接続する。 |
| ログインは動くが、連携が動かない | connector callback、Graph 権限、組織の同意も確認する。 |
| 読み取りはできるが、書き込みできない | 管理権限、対応する delegated Graph 権限、付与済み同意、バックエンドの利用可否を確認する。 |
| client secret が無効または期限切れ | Value を使う。Secret ID ではない。新しい secret も Identity Provider で更新する。 |
| ユーザーに連携が表示されない | Tools での利用可否、ユーザーの接続権限、選択した AI 環境を確認する。 |
詳細情報
中央 SharePoint ナレッジベース: Microsoft の設定
中央で接続されたフォルダーは、各従業員が個別の SharePoint 接続を有効にしなくても、組織アプリ経由で動作します。これには 2 つの別個の同意 が必要です。1 つは Sites.Selected のアプリケーション権限への admin consent、もう 1 つは選択した SharePoint サイトへの read grant です。動作する Microsoft ログインや admin consent だけでは不十分です。
1. 組織アプリを確認する
AI 環境で Microsoft サインインに使用するものと同じ single-tenant app registration を使います。既存のアプリを拡張できます。2 つ目の連携アプリは不要です。Microsoft Entra → App registrations → あなたのアプリ → Overview で Directory (tenant) ID と Application (client) ID を確認してください。以下では Object ID ではなく client ID を使用します。
Directory ID は Admin → 環境 → Tenant → Microsoft ID に設定されている必要があります。client ID と有効な client secret の Value は、まさにその AI 環境の Microsoft Identity Provider に設定されている必要があります。この構成はプラットフォーム管理が維持します。secret の期限切れは中央インポートも妨げます。期限を管理してください。
中央サーバー接続は client_credentials を使用し、追加の redirect URL は要求しません。サインインと個人の work account 連携には既存の Web リダイレクトが引き続き必要です。この前半の表にあるブランド固有の URL を使用してください。
2. アプリケーション権限を追加し、admin consent を付与する
- API permissions → Add a permission → Microsoft Graph → Application permissions を開きます。
- Sites.Selected を検索して選択し、Add permissions をクリックします。
- 権限を持つ Entra 管理者に Grant admin consent for uw organisatie を実行してもらいます。
- Sites.Selected が Application 型で付与済みとして表示されることを確認します。
個人向け Outlook、Teams、SharePoint 接続の delegated 権限は、そのまま同じアプリに残して構いません。中央ナレッジベースのためのアプリケーション権限の代わりにはなりません。この中央インポートには Sites.Read.All、Sites.ReadWrite.All、Sites.FullControl.All は不要です。
3. アプリにサイトへの読み取りアクセスを個別に付与する
この管理操作は Microsoft Graph Explorer で行えます。同じ Microsoft ディレクトリの管理アカウントを使用し、SharePoint Administrator 以上の適切な管理ロールと対象サイトへのアクセス権が必要です。Azure サブスクリプション ロールやアプリの所有権だけでは不十分です。
- 管理アカウントで Graph Explorer にサインインし、表示された組織を確認します。
- プロフィールメニュー → Consent to permissions を開き、Sites.FullControl.All を探して Consent を選び、この管理コンテキストで Graph Explorer に必要な許可を与えます。クエリによっては、Modify Permissions → Open the permissions panel から権限パネル全体を開くこともできます。これはサイト grant を管理するための delegated 管理権限であり、ナレッジベース アプリに広範なアプリケーション権限として追加しないでください。組織全体の同意が不要な場合は、アカウントに紐づく同意を使ってください。
- 以下の GET でサイト ID を検索します。サンプルのホスト名とサイト パスは、自分のフォルダーのものに置き換えてください。URL が
/teams/を含む場合は、/sites/の代わりにそのパスを使います。
GET https://graph.microsoft.com/v1.0/sites/uworganisatie.sharepoint.com:/sites/uwsite?$select=id,displayName,webUrl
レスポンスの id が完全な site ID で、ホスト名と 2 つの GUID を含みます。displayName と webUrl も確認してください。grant は、実際にフォルダーがあるサイトに対して作成する必要があります。
- まず、以下のアドレスに GET して既存の grants を確認します。そこに client ID と
readロールがすでにある場合は、2 つ目の grant を作成する必要はありません。既存の、より広いまたは異なる grants は Microsoft 管理者に確認してもらってください。
GET https://graph.microsoft.com/v1.0/sites/SITE-ID/permissions
- grant がない場合は、POST を選び、同じアドレスを使用し、Request Body に次の JSON を入力します。2 つのサンプル値を置き換えてください。
CLIENT-ID-VAN-UW-APPは、Graph Explorer アプリではなく、あなたの連携アプリの Application (client) ID です。
{
"roles": ["read"],
"grantedToIdentities": [
{
"application": {
"id": "CLIENT-ID-VAN-UW-APP",
"displayName": "NAAM-VAN-UW-INTEGRATIE-APP"
}
}
]
}
- Run query を選びます。成功すると 201 Created が返ります。レスポンスで
readロールと client ID を確認してください。Graph はこれをgrantedToIdentitiesV2配下に表示する場合があります。その後、もう一度 GET で確認します。管理および将来の取り消しのために permission ID を保管してください。 - 意図的にナレッジベース フォルダーを接続したい他の各サイトについてのみ、これを繰り返します。
Microsoft の grant は、アプリに選択したサイト全体への読み取りアクセスを与えます。AI 環境は、選択したフォルダーとサブフォルダーのみを取り込みます。中央共有用の知識には、できるだけ別のサイトを使ってください。既存のナレッジベース権限が、取り込まれたドキュメントを誰が利用できるかを決定します。個々の SharePoint 権限は引き継がれません。
4. フォルダーを接続し、結果を確認する
Beheer → Kennisbank → Toevoegen → SharePoint-mappen → Map koppelen を開き、招待リンクや OneDrive の一覧アドレスではなく、実際のフォルダー URL を使用します。範囲、対象ユーザー、公開ステータスは ナレッジベース マニュアル に従って選択してください。中央ソースでは、ユーザー設定で個人コネクタを有効にする必要はありません。
Vernieuwen で、ドキュメントがエラーなく処理されたか確認します。新しい確認には Nu synchroniseren を使い、その後、取り込まれたドキュメントについて具体的なチャット質問をしてください。回答に正しい中央の知識ソースが記載されていることを確認します。
| 問題 | Microsoft 側の確認事項 |
|---|---|
| ログインは動くが、中央フォルダーは動かない | Sites.Selected が Application 型で admin consent を持っていること。あわせて個別の site grant を確認する。 |
フォルダーアクセス時に 403 Forbidden | 正しい Microsoft ディレクトリ、site ID、client ID、read grant。admin consent だけでは site アクセスは付与されない。 |
Graph Explorer での管理操作で 403 | delegated Sites.FullControl.All、付与済みの同意、管理者ロール、対象サイトへのアクセスを確認する。解決策としてアプリに広範な権限を追加しない。 |
| サイトは動くが、フォルダーが見つからない | 実際のフォルダー URL、ドキュメント ライブラリ、サイト パスを確認する。OneDrive のショートカットは別のサイトを指している場合がある。 |
| secret が期限切れまたは無効 | プラットフォーム管理者に、新しい secret の Value を正しい Microsoft Identity Provider に更新してもらう。 |
OnderwijsSupport on AI-Corporate 向けには、この中央接続は 2026 年 10 月 14 日に公開されテストされました。AI-School、AI-Public、または他の環境での利用可否は、プラットフォーム管理者が確認する必要があります。
Microsoft ドキュメント: Selected permissions、sitegrant の追加、sitegrants の確認。