

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

# ナレッジベースの Microsoft SharePoint に接続する
<a name="sharepoint-data-source-connector"></a>

Microsoft SharePoint は、ドキュメント、ウェブページ、ウェブサイト、リストなどの作業をするための共同のウェブベースサービスです。Amazon Bedrock の [AWS マネジメントコンソールまたは CreateDataSource API を使用して、Amazon Bedrock ](https://console.aws.amazon.com/bedrock/home)ナレッジベースの SharePoint インスタンスに接続できます (Amazon Bedrock が[サポートする SDKsと AWS CLI](https://docs.aws.amazon.com/bedrock/latest/APIReference/welcome.html) を参照）。 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) 

**注記**  
SharePoint データソースコネクタはプレビューリリースの段階であり、変更される可能性があります。  
Microsoft SharePoint データソースは、テーブル、グラフ、図、その他の画像などのマルチモーダルデータはサポートしていません。

Amazon Bedrock は、SharePoint オンラインインスタンスへの接続をサポートしています。OneNote ドキュメントのクロールは現在サポートされていません。現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

クロールできるファイル数とファイルあたりの MB に制限があります。「[Quotas for knowledge bases](https://docs.aws.amazon.com/bedrock/latest/userguide/quotas.html)」を参照してください。

**Topics**
+ [サポートされている機能](#supported-features-sharepoint-connector)
+ [前提条件](#prerequisites-sharepoint-connector)
+ [接続設定](#configuration-sharepoint-connector)

## サポートされている機能
<a name="supported-features-sharepoint-connector"></a>
+ メインドキュメントフィールドの自動検出
+ 包含/除外コンテンツフィルター
+ 追加、更新、削除されたコンテンツの増分同期
+ Microsoft Entra ID 認証 (OAuth2 クライアント認証情報)

## 前提条件
<a name="prerequisites-sharepoint-connector"></a>

### SharePoint (オンライン)
<a name="prerequisites-sharepoint-connector-online"></a>

**重要**  
Azure ACS を介した SharePoint App-Only 認証は、Microsoft によって 2026 年 4 月 2 日に廃止され、機能しなくなりました。代わりに Microsoft Entra ID (OAuth2 クライアント認証情報) 認証を使用します。データソースを設定するときは、 `authType`を に設定します`OAUTH2_CLIENT_CREDENTIALS`。

**SharePoint (オンライン) で、次の手順を実行して Microsoft Entra ID 認証を設定します。**
+ SharePoint オンラインサイトの URL (複数可) を控える。例: {{https://yourdomain.sharepoint.com/sites/mysite}}。URL は {{https}} で始まり、{{sharepoint.com}} を含む必要があります。サイト URL は、{{sharepoint.com/}} や {{sites/mysite/home.aspx}} ではなく、実際の SharePoint サイトである必要があります。
+ SharePoint オンラインインスタンス の URL (複数可) のドメイン名を控える。
+ Microsoft 365 のテナント ID をコピーします。テナント ID は、Microsoft Entra ポータルのプロパティにあります。詳細については、「[Microsoft 365 テナント ID を見つける](https://learn.microsoft.com/en-us/sharepoint/find-your-office-365-tenant-id)」を参照してください。
+ Microsoft Entra ID にアプリケーションを登録します。[Microsoft Entra 管理センター](https://entra.microsoft.com/)に移動し、*アプリ登録*に移動して、*新規登録*を選択します。*アプリケーション (クライアント) ID* と*ディレクトリ (テナント) ID を書き留めます*。
+ 登録済みアプリケーションの API アクセス許可を設定します。*Microsoft グラフ*の追加 → *アプリケーションのアクセス許可* → `Sites.Read.All`。次に、組織に管理者の同意を付与します。
+ クライアントシークレットを作成します。アプリの登録で、*証明書とシークレット* → *新しいクライアントシー*クレットに移動します。シークレット値は再度表示されないため、すぐにコピーします。
+ テナント ID、クライアント ID、クライアントシークレットを に保存します AWS Secrets Manager。シークレットには、キーと値のペア `clientId`、 が含まれている必要があります`clientSecret`。

### AWS アカウント
<a name="prerequisites-sharepoint-connector-account"></a>

** AWS アカウントで、以下を確認してください**。
+ 認証の認証情報を[AWS Secrets Manager シークレット](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)に保存し、シークレットの Amazon リソースネーム (ARN) を書き留めます。このページの**接続設定**の説明に従って、シークレットに入れる必要があるキーと値のペアを含めます。
+ ナレッジベースの AWS Identity and Access Management (IAM) ロール/アクセス許可ポリシーに、データソースに接続するために必要なアクセス許可を含めます。このデータソースがナレッジベース IAM ロールに追加するために必要なアクセス許可については、[「データソースへのアクセス許可](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html#kb-permissions-access-ds)」を参照してください。

**注記**  
コンソールを使用する場合は、 に移動 AWS Secrets Manager してシークレットを追加するか、データソース設定ステップの一部として既存のシークレットを使用できます。必要なすべてのアクセス許可を持つ IAM ロールは、ナレッジベースを作成するためのコンソールステップの一部として作成できます。データソースやその他の設定を行うと、必要なすべてのアクセス許可を持つ IAM ロールが特定のナレッジベースに適用されます。  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。データソース間で認証情報とシークレットを再利用することはお勧めしません。

## 接続設定
<a name="configuration-sharepoint-connector"></a>

SharePoint インスタンスに接続するには、Amazon Bedrock がデータにアクセスしてクロールできるように、必要な設定情報を提供する必要があります。また、[前提条件](#prerequisites-sharepoint-connector) に従う必要があります。

このデータソースの設定例をこのセクションに示します。

ドキュメントフィールドの自動検出、包含/除外フィルター、増分同期、シークレット認証情報、およびこれらの仕組みの詳細については、以下を選択してください。

### メインドキュメントフィールドの自動検出
<a name="ds-sharepoint-document-fields"></a>

データソースコネクタは、ドキュメントまたはコンテンツのすべてのメインメタデータフィールドを自動的に検出してクロールします。例えば、データソースコネクタは、ドキュメントの本文に相当する部分、ドキュメントタイトル、ドキュメントの作成日または変更日、またはドキュメントに適用される可能性のあるその他のコアフィールドをクロールできます。

**重要**  
コンテンツに機密情報が含まれている場合、 Amazon Bedrock は機密情報を使用して応答できます。

メタデータフィールドにフィルタリング演算子を適用して、レスポンスの関連性をさらに高めることができます。例えば、ドキュメントの「epoch\_modification\_time」は、ドキュメントの最終更新日を 1970 年 1 月 1 日からの経過秒数で表します。「epoch\_modification\_time」にフィルターを適用して、その値が特定の数*より大きい*最新のデータだけを取得できます。メタデータフィールドに適用できるフィルタリング演算子の詳細については、「[メタデータとフィルタリング](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html)」を参照してください。

### 包含/除外フィルター
<a name="ds-sharepoint-inclusion-exclusion"></a>

特定のコンテンツのクロールを含めることも除外することもできます。例えば、ファイル名に「private」が含まれているファイルのクロールをスキップするために、除外プレフィックス/正規表現パターンを指定することができます。特定のコンテンツエンティティまたはコンテンツタイプを含めるように、包含プレフィックス/正規表現パターンを指定することもできます。包含フィルターと除外フィルターを指定し、両方がドキュメントに一致する場合、除外フィルターが優先され、ドキュメントはクロールされません。

ファイル名に「private」を含む PDF ファイルを除外またはフィルタリングする正規表現パターンの例: 「*.\*private.\*\\\\.pdf*」

包含/除外フィルターは、次のコンテンツタイプに適用できます。
+ `Page`: メインページのタイトル
+ `Event`: イベント名
+ `File`: 添付ファイルとすべてのドキュメントファイルの拡張子を含むファイル名

OneNote ドキュメントのクロールは現在サポートされていません。

### 増分同期
<a name="ds-sharepoint-incremental-sync"></a>

データソースコネクタは、データソースがナレッジベースと同期するたびに、新規、変更、削除されたコンテンツをクロールします。 Amazon Bedrock は、データソースのメカニズムを使用してコンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをクロールできます。データソースをナレッジベースと初めて同期すると、デフォルトですべてのコンテンツがクロールされます。

データソースをナレッジベースと同期するには、[StartIngestionJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_StartIngestionJob.html) API を使用するか、コンソールでナレッジベースを選択し、データソースの概要セクションで **[同期]** を選択します。

**重要**  
データソースから同期するすべてのデータは、データを取得する `bedrock:Retrieve` アクセス許可を持つすべてのユーザーが利用できるようになります。これには、データソースのアクセス許可が制御されているデータを含めることもできます。詳細については、「[Knowledge base permissions](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html)」を参照してください。

### シークレット認証情報
<a name="ds-sharepoint-secret-auth-credentials"></a>

Microsoft Entra ID 認証 (`OAUTH2_CLIENT_CREDENTIALS`) を使用する場合は、 のシークレット認証情報に次のキーと値のペアが含まれている AWS Secrets Manager 必要があります。
+ `clientId`: {{Microsoft Entra ID アプリ登録からのアプリケーション (クライアント) ID}}
+ `clientSecret`: {{Microsoft Entra ID アプリ登録からのクライアントシークレット値}}

**注記**  
のシークレット AWS Secrets Manager は、ナレッジベースの同じリージョンを使用する必要があります。

------
#### [ Console ]

**SharePoint インスタンスをナレッジベースに接続する**<a name="connect-sharepoint-console"></a>

1. [Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md) の手順に従って、**SharePoint** をデータソースとして選択します。

1. データソース名と説明 (オプション) を入力します。

1. SharePoint サイトの URL (複数可) を入力します。例えば、SharePoint オンラインの場合は、{{https://yourdomain.sharepoint.com/sites/mysite}} です。URL は {{https}} で始まり、{{sharepoint.com}} を含む必要があります。サイト URL は、{{sharepoint.com/}} や {{sites/mysite/home.aspx}} ではなく、実際の SharePoint サイトである必要があります。

1. SharePoint インスタンスのドメイン名を入力します。

1. **[詳細設定]** セクションでは、必要に応じて以下を設定できます。
   + **一時的なデータストレージ用の KMS キー。**– デフォルト AWS マネージドキー または独自の KMS キーを使用して、データを埋め込みに変換しながら、一時的なデータを暗号化できます。詳細については、「[データインジェスト時の一時データストレージの暗号化](encryption-kb.md#encryption-kb-ingestion)」を参照してください。
   + **データ削除ポリシー** – デフォルトでベクトルストアに保存されているデータソースのベクトル埋め込みを削除したり、ベクトルストアデータを保持するように選択したりできます。

1. SharePoint インスタンスに接続するための認証情報を入力します。Microsoft Entra ID 認証の場合:

   1. テナント ID を指定します。テナント ID は、Microsoft Entra 管理センターのプロパティにあります。

   1.  AWS Secrets Manager シークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、Microsoft Entra ID アプリ登録のクライアント ID とクライアントシークレットが含まれている必要があります。

1. (オプション) **[コンテンツの解析とチャンキング]** セクションで、データの解析とチャンキングの方法をカスタマイズできます。これらのカスタマイズの詳細については、次のリソースを参照してください。
   + 解析オプションの詳細については、「[データソースの解析オプション](kb-advanced-parsing.md)」を参照してください。
   + チャンキング戦略の詳細については、「[ナレッジベースのコンテンツのチャンキングの仕組み](kb-chunking.md)」を参照してください。
**警告**  
データソースに接続した後はチャンキング戦略を変更できません。
   + Lambda 関数を使用してデータのチャンキングとメタデータの処理をカスタマイズする方法の詳細については、「[カスタム変換 Lambda 関数を使用してデータの取り込み方法を定義する](kb-custom-transformation.md)」を参照してください。

1. フィルター/正規表現パターンの使用を選択して、特定のコンテンツを含めるか除外します。指定しない場合、標準コンテンツはすべてクロールされます。

1. 埋め込みモデルとベクトルストアの選択を続行します。残りの手順を確認するには、「[Amazon Bedrock ナレッジベースでデータソースに接続してナレッジベースを作成する](knowledge-base-create.md)」に戻り、データソースを接続した後の手順から続行します。

------
#### [ API ]

以下は、Amazon Bedrock ナレッジベースの SharePoint オンラインに接続するための設定の例です。または Python などの AWS CLI サポートされている SDK で API を使用してデータソースを設定します。[CreateKnowledgeBase](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) を呼び出した後、[CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) を呼び出して、`dataSourceConfiguration` の接続情報を使用してデータソースを作成します。

オプションの `vectorIngestionConfiguration` フィールドを含めることで取り込みに適用できるカスタマイズの詳細については、「[データソースの取り込みをカスタマイズする](kb-data-source-customize-ingestion.md)」を参照してください。

**AWS Command Line Interface**

```
aws bedrock-agent create-data-source \
 --name "SharePoint Online connector" \
 --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE"
```

**`sharepoint-bedrock-connector-configuration.json` の内容**

```
{
    "sharePointConfiguration": {
        "sourceConfiguration": {
            "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
            "hostType": "ONLINE",
            "domain": "yourdomain",
            "siteUrls": [
                "https://yourdomain.sharepoint.com/sites/mysite"
            ],
            "authType": "OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "File",
                            "inclusionFilters": [
                                ".*\\.pdf"
                            ],
                            "exclusionFilters": [
                                ".*private.*\\.pdf"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "SHAREPOINT"
}
```

------

**重要**  
Azure ACS を介した SharePoint App-Only 認証は、2026 年 4 月 2 日に Microsoft によって廃止されました。上記の前提条件で説明されているように、Microsoft Entra ID 認証 (`OAUTH2_CLIENT_CREDENTIALS`) を使用します。

## OAuth2.0 の使用
<a name="sharepoint-connector-oauth"></a>

OAuth 2.0 を使用すると、ナレッジベースと統合された SharePoint コネクタの SharePoint リソースへのアクセスを認証および認可できます。

### 前提条件
<a name="sharepoint-connector-oauth-prereq"></a>

**SharePoint では、OAuth 2.0 認証の場合、以下を確認してください**。
+ SharePoint オンラインサイトの URL (複数可) を控える。例: {{https://yourdomain.sharepoint.com/sites/mysite}}。URL は {{https}} で始まり、{{sharepoint.com}} を含む必要があります。サイト URL は、{{sharepoint.com/}} や {{sites/mysite/home.aspx}} ではなく、実際の SharePoint サイトである必要があります。
+ SharePoint オンラインインスタンス の URL (複数可) のドメイン名を控える。
+ Microsoft 365 のテナント ID をコピーします。テナント ID は Microsoft Entra ポータルのプロパティまたは OAuth アプリケーションで確認できます。

  管理者の SharePoint アカウントのユーザー名とパスワードを控え、アプリケーションを登録する際にクライアント ID とクライアントシークレットの値をコピーします。
**注記**  
アプリケーションの例については、Microsoft Learn ウェブサイトの 「[Microsoft Entra ID でクライアント アプリケーションを登録する](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)」(旧称 Azure Active Directory) を参照してください。
+ アプリケーションを登録する際に SharePoint に接続するには、特定の読み取りアクセス許可が必要です。
  + SharePoint: AllSites.Read (委任) - すべてのサイトコレクションの項目を読み取る
+ 管理者ユーザーを使用して、Azure ポータルで**セキュリティのデフォルト**を無効にする必要がある場合があります。Azure Portal でのセキュリティのデフォルト設定の管理の詳細については、[セキュリティのデフォルトを有効または無効にする方法に関する Microsoft のドキュメント](https://learn.microsoft.com/en-us/microsoft-365/business-premium/m365bp-conditional-access?view=o365-worldwide&tabs=secdefaults#security-defaults-1)を参照してください。
+ Amazon Bedrock が SharePoint コンテンツのクロールをブロックされないように、SharePoint アカウントの多要素認証 (MFA) をオフにする必要があるかもしれません。

前提条件を満たすには、「[AWS アカウント](#prerequisites-sharepoint-connector-account)」の手順が完了していることを確認してください。

### シークレット認証情報
<a name="sharepoint-secret-auth-credentials-oauth"></a>

OAuth2.0 の接続設定は、「[接続設定](#configuration-sharepoint-connector)」で説明されているように、メインドキュメントフィールド、インクルージョン/除外フィルター、増分同期の自動検出と同じ手順を実行できます。

**OAuth 2.0 認証では、 のシークレット認証情報にこれらのキーと値のペアが含まれている AWS Secrets Manager 必要があります**。
+ `username`: {{SharePoint 管理者ユーザー名}}
+ `password`: {{SharePoint 管理者パスワード}}
+ `clientId`: {{OAuth アプリクライアント ID}}
+ `clientSecret`: {{OAuth アプリクライアントシークレット}}

### SharePoint インスタンスをナレッジベースに接続する
<a name="sharepoint-connector-oauth-using"></a>

OAuth2.0 を使用するときに SharePoint インスタンスをナレッジベースに接続する場合
+ (コンソール) コンソールで、「[SharePoint インスタンスをナレッジベースに接続する](https://docs.aws.amazon.com/bedrock/latest/userguide/sharepoint-data-source-connector.html#connect-sharepoint-console)」で説明しているのと同じ手順に従います。SharePoint インスタンスに接続するための認証情報を入力する場合
  + テナント ID を指定します。テナント ID は Azure Active Directory ポータルの [プロパティ] で確認できます。
  +  AWS Secrets Manager シークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、SharePoint 管理者のユーザー名とパスワード、登録済みのアプリクライアント ID とクライアントシークレットを含める必要があります。アプリケーションの例については、Microsoft Learn ウェブサイトの 「[Microsoft Entra ID でクライアント アプリケーションを登録する](https://learn.microsoft.com/en-us/azure/healthcare-apis/register-application)」(旧称 Azure Active Directory) を参照してください。
+ (API) 以下は、`CreateDataSource` API を使用して OAuth2.0 の接続情報を含むデータソースを作成する例です。

  ```
  aws bedrock-agent create-data-source \
   --name "SharePoint Online connector" \
   --description "SharePoint Online data source connector for Amazon Bedrock to use content in SharePoint" \
   --knowledge-base-id "your-knowledge-base-id" \
   --data-source-configuration file://sharepoint-bedrock-connector-configuration.json \
   --data-deletion-policy "DELETE"
  ```

  **`sharepoint-bedrock-connector-configuration.json` の内容**

  ```
  {
      "sharePointConfiguration": {
          "sourceConfiguration": {
              "tenantId": "888d0b57-69f1-4fb8-957f-e1f0bedf64de",
              "hostType": "ONLINE",
              "domain": "yourdomain",
              "siteUrls": [
                  "https://yourdomain.sharepoint.com/sites/mysite"
              ],
              "authType": "OAUTH2_CLIENT_CREDENTIALS",
              "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-SharePoint"
          },
          "crawlerConfiguration": {
              "filterConfiguration": {
                  "type": "PATTERN",
                  "patternObjectFilter": {
                      "filters": [
                          {
                              "objectType": "File",
                              "inclusionFilters": [
                                  ".*\\.pdf"
                              ],
                              "exclusionFilters": [
                                  ".*private.*\\.pdf"
                              ]
                          }
                      ]
                  }
              }
          }
      },
      "type": "SHAREPOINT"
  }
  ```