

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

# SharePoint コネクタ V2.0
<a name="data-source-v2-sharepoint"></a>

SharePoint は、ウェブコンテンツをカスタマイズしたり、ページ、サイト、ドキュメントライブラリ、リストを作成したりできる、コラボレーション用ウェブサイト構築サービスです。 Amazon Kendra を使用して SharePoint データソースのインデックスを作成できます。

Amazon Kendra は現在、SharePoint Online と SharePoint Server (2013、2016、2019、サブスクリプションエディション) をサポートしています。

**注記**  
SharePoint コネクタ V1.0/SharePointConfiguration API のサポートは 2023 年に終了しました。SharePoint コネクタ V2.0/TemplateConfiguration API に移行するか、こちらを使用することをお勧めします。

 Amazon Kendra SharePoint データソースコネクタのトラブルシューティングについては、「」を参照してください[データソースのトラブルシューティング](troubleshooting-data-sources.md)。

**Topics**
+ [サポートされている機能](#supported-features-v2-sharepoint)
+ [前提条件](#prerequisites-v2-sharepoint)
+ [接続手順](#data-source-procedure-v2-sharepoint)
+ [注意事項](#sharepoint-notes)

## サポートされている機能
<a name="supported-features-v2-sharepoint"></a>

Amazon Kendra SharePoint データソースコネクタは、次の機能をサポートしています。
+ フィールドマッピング
+ ユーザーアクセスコントロール
+ 包含/除外フィルター
+ 完全および増分コンテンツ同期
+ Virtual Private Cloud (VPC)

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

 Amazon Kendra を使用して SharePoint データソースのインデックスを作成する前に、SharePoint と AWS アカウントでこれらの変更を行います。

シー AWS Secrets Manager クレットに安全に保存されている認証情報を指定する必要があります。

**注記**  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。認証情報とシークレットを、データソース、コネクタバージョン 1.0 と 2.0 (該当する場合) で再利用することは推奨**しません**。

**SharePoint Online では、次のものがあることを確認してください。**
+ SharePoint インスタンスの URL をコピーしました。入力したホスト URL の形式は {{https://yourdomain.com/sites/mysite}} です。URL は `https` で始まる必要があります。
+ SharePoint インスタンス URL のドメイン名をコピーしました。
+ SharePoint Online に接続するためのサイト管理者権限を持つユーザー名とパスワードを含む基本認証資格情報を記録しました。
+ 管理者ユーザーを使用して Azure Portal の **[セキュリティデフォルト]** を無効にした。Azure Portal でのセキュリティのデフォルト設定の管理の詳細については、[セキュリティのデフォルトを有効または無効にする方法に関する Microsoft のドキュメント](https://learn.microsoft.com/en-us/microsoft-365/business-premium/m365bp-conditional-access?view=o365-worldwide&tabs=secdefaults#security-defaults-1)を参照してください。
+ SharePoint アカウントの多要素認証 (MFA) を非アクティブ化し、 Amazon Kendra が SharePoint コンテンツのクロールをブロックしないようにします。
+ **基本認証以外の認証タイプを使用している場合:** SharePoint インスタンスのテナント ID をコピーしました。テナント ID を確認する方法の詳細については、「[Find your Microsoft 365 tenant ID](https://learn.microsoft.com/en-us/sharepoint/find-your-office-365-tenant-id)」を参照してください。
+ Microsoft Entra を使用してクラウドユーザー認証に移行する必要がある場合は、[クラウド認証に関する Microsoft のドキュメント](https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/migrate-from-federation-to-cloud-authentication)を参照してください。
+ **OAuth 2.0 認証および OAuth 2.0 更新トークン認証の場合:** SharePoint Online への接続に使用するユーザー名とパスワード、および SharePoint を Azure AD に登録した後に生成されたクライアント ID とクライアントシークレットを含む **[基本認証]** の認証情報を書き留めました。
  + **ACL を使用していない場合は**、次のアクセス許可が追加されました。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/data-source-v2-sharepoint.html)
**注記**  
Note.Read.All と Site.Read.All は OneNote ドキュメントをクロールする場合のみ必要です。  
特定のサイトをクロールする場合は、ドメインで利用可能なすべてのサイトではなく、特定のサイトへのアクセス許可を制限するようにできます。**Site.Selected (アプリケーション)** アクセス許可を設定します。この API アクセス許可では、Microsoft Graph API を介してすべてのサイトにアクセス許可を明示的に設定する必要があります。詳細については、[Sites.Selected アクセス許可に関する Microsoft のブログ](https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/develop-applications-that-use-sites-selected-permissions-for-spo/ba-p/3790476)を参照してください。
  + **ACL を使用している場合は**、次のアクセス許可を追加した。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/data-source-v2-sharepoint.html)
**注記**  
GroupMember.read.all と User.Read.All は **[ID クローラー]** がアクティブ化されている場合にのみ必要です。  
特定のサイトをクロールする場合は、ドメインで利用可能なすべてのサイトではなく、特定のサイトへのアクセス許可を制限するようにできます。**Site.Selected (アプリケーション)** アクセス許可を設定します。この API アクセス許可では、Microsoft Graph API を介してすべてのサイトにアクセス許可を明示的に設定する必要があります。詳細については、[Sites.Selected アクセス許可に関する Microsoft のブログ](https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/develop-applications-that-use-sites-selected-permissions-for-spo/ba-p/3790476)を参照してください。
+ **Azure AD アプリ専用認証の場合:** SharePoint を Azure AD に登録した後に生成したプライベートキーとクライアント ID。また、X.509 証明書も書き留めます。
  + **ACL を使用していない場合は**、次のアクセス許可が追加されました。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/data-source-v2-sharepoint.html)
**注記**  
特定のサイトをクロールする場合は、ドメインで利用可能なすべてのサイトではなく、特定のサイトへのアクセス許可を制限するようにできます。**Site.Selected (アプリケーション)** アクセス許可を設定します。この API アクセス許可では、Microsoft Graph API を介してすべてのサイトにアクセス許可を明示的に設定する必要があります。詳細については、[Sites.Selected アクセス許可に関する Microsoft のブログ](https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/develop-applications-that-use-sites-selected-permissions-for-spo/ba-p/3790476)を参照してください。
  + **ACL を使用している場合は**、次のアクセス許可を追加した。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/data-source-v2-sharepoint.html)
**注記**  
特定のサイトをクロールする場合は、ドメインで利用可能なすべてのサイトではなく、特定のサイトへのアクセス許可を制限するようにできます。**Site.Selected (アプリケーション)** アクセス許可を設定します。この API アクセス許可では、Microsoft Graph API を介してすべてのサイトにアクセス許可を明示的に設定する必要があります。詳細については、[Sites.Selected アクセス許可に関する Microsoft のブログ](https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/develop-applications-that-use-sites-selected-permissions-for-spo/ba-p/3790476)を参照してください。
+ **SharePoint アプリ専用認証の場合:** SharePoint アプリのみに権限を付与する際に生成された SharePoint クライアント ID とクライアントシークレット、および SharePoint アプリを Azure AD に登録したときに生成されたクライアント ID とクライアントシークレットを記録しました。
**注記**  
SharePoint アプリ専用認証は、SharePoint 2013 バージョンではサポートされて*いません*。
  + **(オプション) OneNote ドキュメントをクロールしていて **[ID クローラー]** を使用している場合、次のアクセス許可が追加されました**。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/kendra/latest/dg/data-source-v2-sharepoint.html)
**注記**  
**[基本認証]** と SharePoint **アプリ専用認証**を使用してエンティティをクロールする場合、API アクセス許可は必要ありません。

**SharePoint Server では、次のものがあることを確認してください。**
+ SharePoint インスタンス URL と SharePoint URL のドメイン名をコピーしました。入力したホスト URL の形式は {{https://yourcompany/sites/mysite}} です。URL は `https` で始まる必要があります。
**注記**  
(オンプレミス/サーバー) Amazon Kendra AWS Secrets Manager は、 に含まれるエンドポイント情報が、データソース設定の詳細で指定されたエンドポイント情報と同じかどうかを確認します。[混乱する代理問題](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)は、ユーザーがアクションを実行するアクセス許可がないにもかかわらず、 Amazon Kendra をプロキシとして使用して設定された秘密にアクセスし、アクションを実行するセキュリティの問題です。後でエンドポイント情報を変更する場合は、新しいシークレットを作成してこの情報を同期する必要があります。
+ SharePoint アカウントの多要素認証 (MFA) を非アクティブ化し、 Amazon Kendra が SharePoint コンテンツのクロールをブロックしないようにします。
+ アクセス制御に **[SharePoint アプリ専用認証]** を使用する場合:
  + サイトレベルでアプリのみを登録したときに生成された SharePoint クライアント ID をコピーしました。クライアント ID 形式は ClientId@TenantId です。例: {{ffa956f3-8f89-44e7-b0e4-49670756342c@888d0b57-69f1-4fb8-957f-e1f0bedf82fe}}。
  + サイトレベルでアプリのみを登録したときに生成された SharePoint クライアントシークレットをコピーしました。

  **注:** クライアント ID とクライアントシークレットは、SharePoint Server をアプリ専用認証に登録した場合にのみ単一サイト用に生成されるため、SharePoint アプリ専用認証でサポートされるサイト URL は 1 つだけです。
**注記**  
SharePoint アプリ専用認証は、SharePoint 2013 バージョンではサポートされて*いません*。
+ **[カスタムドメイン付き E メール ID]** をアクセス制御に使用する場合:
  + カスタムメールドメインの値 (例: {{"amazon.com"}}) を記録しました。
+ **[IDP からのドメインを使った E メール ID]** 承認を使用している場合は、以下をコピーしました。
  + LDAP サーバーエンドポイント (プロトコルとポート番号を含む LDAP サーバーのエンドポイント)。例: {{ldap://example.com:389}}。
  + LDAP 検索ベース (LDAP ユーザーの検索ベース)。例: {{CN=Users、DC=sharepoint、DC=com}}.
  + LDAP ユーザー名と LDAP パスワード。
+ 設定済みの NTLM 認証資格情報、**または**ユーザー名 (SharePoint アカウントユーザー名) とパスワード (SharePoint アカウントパスワード) を含む設定済みの Kerberos 認証資格情報のいずれか。

**で AWS アカウント、以下があることを確認します。**
+ [Amazon Kendra インデックスを作成し](https://docs.aws.amazon.com/kendra/latest/dg/create-index.html)、API を使用している場合はインデックス ID を記録しました。
+ データソースの [IAM ロールを作成し](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)、 API を使用している場合はロールの ARN を記録しました IAM 。
**注記**  
認証タイプと認証情報を変更する場合は、 IAM ロールを更新して正しい AWS Secrets Manager シークレット ID にアクセスする必要があります。
+ SharePoint の認証情報を AWS Secrets Manager シークレットに保存し、API を使用している場合は、シークレットの ARN を記録済み。
**注記**  
認証情報とシークレットは、定期的に更新またはローテーションすることをお勧めします。セキュリティに必要なアクセスレベルのみを提供してください。認証情報とシークレットを、データソース、コネクタバージョン 1.0 と 2.0 (該当する場合) で再利用することは推奨**しません**。

既存の IAM ロールまたはシークレットがない場合は、SharePoint データソースを接続するときに コンソールを使用して新しい IAM ロールと Secrets Manager シークレットを作成できます Amazon Kendra。API を使用している場合は、既存の IAM ロールと Secrets Manager シークレットの ARN とインデックス ID を指定する必要があります。

## 接続手順
<a name="data-source-procedure-v2-sharepoint"></a>

SharePoint データソース Amazon Kendra に接続するには、 がデータにアクセスできるように Amazon Kendra 、SharePoint 認証情報の詳細を指定する必要があります。SharePoint をまだ設定していない場合は、 Amazon Kendra 「」を参照してください[前提条件](#prerequisites-v2-sharepoint)。

------
#### [ Console: SharePoint Online ]

**SharePoint Online Amazon Kendra に接続するには** 

1. にサインイン AWS マネジメントコンソール し、 [Amazon Kendra コンソール](https://console.aws.amazon.com/kendra/)を開きます。

1. 左側のナビゲーションペインで、**[インデックス]** を選択し、インデックスのリストから使用するインデックスを選択します。
**注記**  
**[インデックスの設定]** で、**[ユーザーアクセスコントロール]** 設定を設定または編集できます。

1. **[使用開始]** ページで、**[データソースを追加]** を選択します。

1. **[データソースを追加]** ページで **[SharePoint コネクタ]** を選択し、**[コネクタを追加]** を選択します。バージョン 2 (該当する場合) を使用している場合は、「V2.0」タグが付いた **[SharePoint コネクタ]** を選択します。

1. **[データソースの詳細を指定]** ページで、次の情報を入力します。

   1. **[名前と説明]** の **[データソース名]** に、データソースの名前を入力します。ハイフン (-) は使用できますが、スペースは使用できません。

   1. (オプション) **[説明]** - オプションで、データソースの説明を入力します。

   1. **[デフォルト言語]** - インデックス用にドキュメントをフィルターするための言語。特に指定しない限り、言語はデフォルトで英語に設定されます。ドキュメントのメタデータで指定された言語は、選択した言語よりも優先されます。

   1. **タグ**で新しい**タグを追加する** - リソースを検索してフィルタリングしたり、 AWS コストを追跡したりするためのオプションのタグを含めます。

   1. [**次へ**] を選択します。

1. **[アクセスとセキュリティの定義]** ページで、次の情報を入力します。

   1. **[ホスティング方法]** - **[SharePoint Online]** を選択します。

   1. **[SharePoint リポジトリ固有のサイト URL]** - SharePoint ホストの URL を入力します。入力したホスト URL の形式は {{https://yourdomain.sharepoint.com/sites/mysite}} です。URL は `https` プロトコルで始まる必要があります。URL は改行で区切ります。最大 100 個の URL を追加できます。

   1. **[ドメイン]** - SharePoint ドメインを入力します。例えば、URL {{https://yourdomain.sharepoint.com/sites/mysite}} のドメインは {{yourdomain}} です。

   1. **[承認]** - アクセスコントロールリスト (ACL) があり、それをアクセスコントロールに使用する場合に、ドキュメントの ACL 情報を有効にするか無効にするかを選択します。ACL では、ユーザーとグループがアクセスできるドキュメントを指定します。ACL 情報は、ユーザーまたはそのグループのドキュメントへのアクセスに基づいて、検索結果をフィルタリングするために使用されます。詳細については、「[User context filtering](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)」を参照してください。

      また、ユーザー ID のタイプとして、Azure Portal から取得したユーザープリンシパル名かユーザーメールアドレスのいずれかを選択できます。指定しない場合は、デフォルトで E メールが使用されます。

   1. **[認証]** - [基本]、[OAuth 2.0]、[Azure AD アプリケーション専用認証]、[SharePoint アプリケーション専用認証]、[OAuth 2.0 更新トークン認証] のいずれかを選択します。認証情報を保存するための既存の AWS Secrets Manager シークレットを選択するか、新しいシークレットを作成します。

      1. **[基本認証]** を使用する場合は、シークレットにはシークレット名、および SharePoint のユーザー名とパスワードを含める必要があります。

      1. **[OAuth 2.0 認証]** を使用する場合は、シークレットには、SharePoint テナント ID、シークレット名、SharePoint ユーザー名、パスワード、Azure AD に SharePoint を登録するときに生成される Azure AD クライアント ID、および Azure AD に SharePoint を登録するときに生成される Azure AD クライアントシークレットを含める必要があります。

      1. **[Azure AD アプリ専用認証]** を使用する場合は、シークレットには、SharePoint テナント ID、Azure AD 自己署名 X.509 証明書、シークレット名、Azure AD に SharePoint を登録したときに生成された Azure AD クライアント ID、および Azure AD のコネクタを認証するためのプライベートキーを含める必要があります。

      1. **[SharePoint アプリ専用認証]** を使用する場合は、シークレットには、SharePoint テナント ID、シークレット名、テナントレベルでアプリ専用を登録するときに生成された SharePoint クライアント ID、テナントレベルでアプリ専用を登録するときに生成された SharePoint クライアントシークレット、Azure AD に SharePoint を登録するときに生成された Azure AD クライアント ID、および Azure AD に SharePoint を登録するに生成された Azure AD クライアントシークレットを含める必要があります。

         SharePoint クライアント ID 形式は {{ClientID@TenantId}} です。例: {{ffa956f3-8f89-44e7-b0e4-49670756342c@888d0b57-69f1-4fb8-957f-e1f0bedf82fe}}。

      1. **OAuth 2.0 更新トークン認証**を使用する場合、シークレットには、SharePoint テナント ID、シークレット名、Azure AD に SharePoint を登録するときに生成された一意の Azure AD クライアント ID、SharePoint を Azure AD に登録するときに生成された Azure AD クライアントシークレット、SharePoint Amazon Kendra に接続するために生成された更新トークンを含める必要があります。

   1. **[仮想プライベートクラウド (VPC)]** - VPC の使用を選択できます。選択する場合は、**[サブネット]** と **[VPC セキュリティグループ]** を追加する必要があります。

   1. **[ID クローラー]** - Amazon Kendraの ID クローラーを有効にするかどうかを指定します。ID クローラーは、ドキュメントのアクセスコントロールリスト (ACL) 情報を使用して、ユーザーまたはそのグループのドキュメントへのアクセス権に基づいて検索結果をフィルタリングします。ドキュメントの ACL があり、ACL を使用することを選択した場合は、 Amazon Kendra ID クローラをオンにして検索結果の[ユーザーコンテキストフィルタリング](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)を設定することもできます。それ以外の場合は、ID クローラーがオフになっている場合、すべてのドキュメントは公開され検索可能になります。ID クローラーがオフになっているときにドキュメントのアクセスコントロールを使用する場合は、代わりに [PutPrincipalMapping](https://docs.aws.amazon.com/kendra/latest/APIReference/API_PutPrincipalMapping.html) API を使用して、ユーザーコンテキストフィルタリング用にユーザーとグループのアクセス情報をアップロードすることができます。

      また、ローカルグループマッピングをクロールするか、Azure Active Directory のグループマッピングをクロールするかを選択することもできます。
**注記**  
AD グループマッピングのクローリングは、OAuth 2.0、OAuth 2.0 更新トークン、SharePoint アプリ専用認証にのみ使用できます。

   1. **IAM role** — 既存の IAM ロールを選択するか、新しい IAM ロールを作成してリポジトリの認証情報とインデックスコンテンツにアクセスします。
**注記**  
IAM インデックスに使用される ロールは、データソースには使用できません。インデックスやよくある質問に既存のロールが使用されているかどうかが不明な場合は、エラーを避けるため、**[新しいロールを作成]** を選択してください。

   1. [**次へ**] を選択します。

1. **[同期設定の構成]** ページで、次の情報を入力します。

   1. **[同期の範囲]** で、次のオプションから選択します。

      1. **[エンティティの選択]** - クロールするエンティティを選択します。**[すべて]** のエンティティをクロールするか、**[ファイル]**、**[添付ファイル]**、**[リンク]**、**[ページ]**、**[イベント]**、**[コメント]**、**[リストデータ]** を組み合わせてクロールするかを選択できます。

      1. **[追加の設定]** の **[エンティティ正規表現パターン]** - **[リンク]**、**[ページ]**、**[イベント]** に正規表現パターンを追加して、すべてのドキュメントを同期する代わりに特定のエンティティを含めます。

      1. **[正規表現パターン]** - すべてのドキュメントを同期する代わりに、**[ファイルパス]**、**[ファイル名]**、**[ファイルタイプ]**、**[OneNote セクション名]**、**[OneNote ページ名]** でファイルを含めたり除外したりする正規表現パターンを追加します。最大 100 個を追加できます。
**注記**  
OneNote クローリングは、OAuth 2.0、OAuth 2.0 更新トークン、SharePoint アプリ専用認証にのみ使用できます。

   1. **[同期モード]** では、データソースのコンテンツが変更されたときのインデックスの更新方法を選択します。 Amazon Kendra でデータソースを初めて同期すると、デフォルトですべてのコンテンツが同期されます。
      + **[完全同期]** - 前回の同期ステータスに関係なく、すべてのコンテンツを同期します。
      + **[新規または変更済みのドキュメントを同期]** - 新規または変更済みのドキュメントのみを同期します。
      + **[新規、変更済み、または削除されたドキュメントを同期]** - 新規、変更済み、または削除されたドキュメントのみを同期します。

   1. **[同期実行スケジュール]** の **[頻度]** - データソースコンテンツを同期してインデックスを更新する頻度を選択します。

   1. [**次へ**] を選択します。

1. **[フィールドマッピングを設定]** ページで、次の情報を入力します。

   1. **デフォルトのデータソースフィールド** — インデックスにマッピングする Amazon Kendra 生成されたデフォルトのデータソースフィールドから選択します。

   1.  **[フィールドを追加]** - カスタムデータソースフィールドを追加して、マッピング先のインデックスフィールド名とフィールドデータタイプを作成します。

   1. [**次へ**] を選択します。

1. **[確認と作成]** ページで、入力した情報が正しいことを確認し、**[データソースを追加]** を選択します。このページで情報の編集を選択することもできます。データソースが正常に追加されると、データソースが **[データソース]** ページに表示されます。

------
#### [ Console: SharePoint Server ]

**SharePoint Amazon Kendra に接続するには** 

1. にサインイン AWS マネジメントコンソール し、 [Amazon Kendra コンソール](https://console.aws.amazon.com/kendra/)を開きます。

1. 左側のナビゲーションペインで、**[インデックス]** を選択し、インデックスのリストから使用するインデックスを選択します。
**注記**  
**[インデックスの設定]** で、**[ユーザーアクセスコントロール]** 設定を設定または編集できます。

1. **[使用開始]** ページで、**[データソースを追加]** を選択します。

1. **[データソースを追加]** ページで **[SharePoint コネクタ]** を選択し、**[コネクタを追加]** を選択します。バージョン 2 (該当する場合) を使用している場合は、「V2.0」タグが付いた **[SharePoint コネクタ]** を選択します。

1. **[データソースの詳細を指定]** ページで、次の情報を入力します。

   1. **[名前と説明]** の **[データソース名]** に、データソースの名前を入力します。ハイフン (-) は使用できますが、スペースは使用できません。

   1. (オプション) **[説明]** - オプションで、データソースの説明を入力します。

   1. **[デフォルト言語]** - インデックス用にドキュメントをフィルターするための言語。特に指定しない限り、言語はデフォルトで英語に設定されます。ドキュメントのメタデータで指定された言語は、選択した言語よりも優先されます。

   1. **タグ**で、**新しいタグを追加する** - リソースを検索してフィルタリングしたり、 AWS コストを追跡したりするためのオプションのタグを含めます。

   1. [**次へ**] を選択します。

1. **[アクセスとセキュリティの定義]** ページで、次の情報を入力します。

   1. **[ホスティング方法]** - **[SharePoint Server]** を選択します。

   1. **[SharePoint バージョンを選択]** - **[SharePoint 2013]**、**[SharePoint 2016]**、**[SharePoint 2019]**、**[SharePoint (サブスクリプションエディション)]** のいずれかを選択します。

   1. **[SharePoint リポジトリ固有のサイト URL]** - SharePoint ホストの URL を入力します。入力したホスト URL の形式は {{https://yourcompany/sites/mysite}} です。URL は `https` プロトコルで始まる必要があります。URL は改行で区切ります。最大 100 個の URL を追加できます。

   1. **[ドメイン]** - SharePoint ドメインを入力します。例えば、URL {{https://yourcompany/sites/mysite}} のドメインは {{yourcompany}} です

   1. **SSL 証明書の場所** — SSL 証明書ファイルへの Amazon S3 パスを入力します。

   1. (オプション) **[ウェブプロキシ]** の場合: ホスト名 (`http://` または `https://` プロトコルなし) と、ホスト URL トランスポートプロトコルで使用されるポート番号を入力します。ポート番号の数値は 0～65535 の間である必要があります。

   1. **[承認]** - アクセスコントロールリスト (ACL) があり、それをアクセスコントロールに使用する場合に、ドキュメントの ACL 情報を有効にするか無効にするかを選択します。ACL では、ユーザーとグループがアクセスできるドキュメントを指定します。ACL 情報は、ユーザーまたはそのグループのドキュメントへのアクセスに基づいて、検索結果をフィルタリングするために使用されます。詳細については、「[User context filtering](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)」を参照してください。

      SharePoint Server の場合は、次の ACL オプションから選択できます。

      1. **[IDP からのドメインを使った E メール ID]** - ユーザー ID は、基になる ID プロバイダー (IdP) から取得したドメインを使用した E メール ID に基づきます。**認証**の一環として、 Secrets Manager のシークレットに保存した IDP 接続の詳細を提供します。

      1. **[カスタムドメインを使用した E メール ID]** - ユーザー ID はカスタム E メールドメイン値に基づきます。例: {{"amazon.com"}}。E メールドメインは、アクセス制御用の E メール ID の作成に使用されます。カスタム E メールドメインを入力する必要があります。

      1. **[ドメインを使用したドメイン\\ユーザー]** - ユーザー ID は、ドメイン\\ユーザー ID 形式で構成されます。有効なドメイン名を指定する必要があります。例えば、アクセス制御を構築するには {{"sharepoint2019"}} と入力します。

   1. **[認証]** では、[SharePoint アプリ専用認証]、[NTLM 認証]、[Kerberos 認証] のいずれかを選択します。認証情報を保存するための既存の AWS Secrets Manager シークレットを選択するか、新しいシークレットを作成します。

      1. **[NTLM 認証]** または **[Kerberos 認証]** を使用する場合は、シークレットに、シークレット名、および SharePoint のユーザー名とパスワードを含める必要があります。

         **[IDP からのドメイン付き E メール ID]** を使用している場合は、次の情報も入力してください。
         +  **[LDAP サーバーエンドポイント]** - プロトコルとポート番号を含む LDAP サーバーのエンドポイント。例: {{ldap://example.com:389}}。
         + **[LDAP 検索ベース]** - LDAP ユーザーの検索ベース。例: {{CN=Users、DC=sharepoint、DC=com}}.
         + **[LDAP ユーザー名]** - LDAP ユーザー名。
         + **[LDAP パスワード]** - LDAP パスワード。

      1. **[SharePoint アプリ専用認証]** を使用する場合は、シークレットにはシークレット名、サイトレベルでアプリ専用を登録するときに生成された SharePoint クライアント ID、サイトレベルでアプリ専用を登録するときに生成された SharePoint クライアントシークレットを含める必要があります。

         SharePoint クライアント ID 形式は {{ClientID@TenantId}} です。例: {{ffa956f3-8f89-44e7-b0e4-49670756342c@888d0b57-69f1-4fb8-957f-e1f0bedf82fe}}。

         **注:** クライアント ID とクライアントシークレットは、SharePoint Server をアプリ専用認証に登録した場合にのみ単一サイト用に生成されるため、SharePoint アプリ専用認証でサポートされるサイト URL は 1 つだけです。

         **[IDP からのドメイン付き E メール ID]** を使用している場合は、次の情報も入力してください。
         +  **[LDAP サーバーエンドポイント]** - プロトコルとポート番号を含む LDAP サーバーのエンドポイント。例: {{ldap://example.com:389}}。
         + **[LDAP 検索ベース]** - LDAP ユーザーの検索ベース。例: {{CN=Users、DC=sharepoint、DC=com}}.
         + **[LDAP ユーザー名]** - LDAP ユーザー名。
         + **[LDAP パスワード]** - LDAP パスワード。

   1. **[仮想プライベートクラウド (VPC)]** - VPC の使用を選択できます。選択する場合は、**[サブネット]** と **[VPC セキュリティグループ]** を追加する必要があります。

   1. **[ID クローラー]** - Amazon Kendraの ID クローラーを有効にするかどうかを指定します。ID クローラーは、ドキュメントのアクセスコントロールリスト (ACL) 情報を使用して、ユーザーまたはそのグループのドキュメントへのアクセス権に基づいて検索結果をフィルタリングします。ドキュメントの ACL があり、ACL を使用することを選択した場合は、 Amazon Kendra ID クローラをオンにして検索結果の[ユーザーコンテキストフィルタリング](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)を設定することもできます。それ以外の場合は、ID クローラーがオフになっている場合、すべてのドキュメントは公開され検索可能になります。ID クローラーがオフになっているときにドキュメントのアクセスコントロールを使用する場合は、代わりに [PutPrincipalMapping](https://docs.aws.amazon.com/kendra/latest/APIReference/API_PutPrincipalMapping.html) API を使用して、ユーザーコンテキストフィルタリング用にユーザーとグループのアクセス情報をアップロードすることができます。

      また、ローカルグループマッピングをクロールするか、Azure Active Directory のグループマッピングをクロールするかを選択することもできます。
**注記**  
AD グループマッピングのクローリングは、SharePoint アプリ専用認証にのみ使用できます。

   1. **IAM role** — 既存の IAM ロールを選択するか、リポジトリの認証情報とインデックスコンテンツにアクセスするための新しい IAM ロールを作成します。
**注記**  
IAM インデックスに使用される ロールは、データソースには使用できません。インデックスやよくある質問に既存のロールが使用されているかどうかが不明な場合は、エラーを避けるため、**[新しいロールを作成]** を選択してください。

   1. [**次へ**] を選択します。

1. **[同期設定の構成]** ページで、次の情報を入力します。

   1. **[同期の範囲]** で、次のオプションから選択します。

      1. **[エンティティの選択]** - クロールするエンティティを選択します。**[すべて]** のエンティティをクロールするか、**[ファイル]**、**[添付ファイル]**、**[リンク]**、**[ページ]**、**[イベント]**、**[リストデータ]** を組み合わせてクロールするかを選択できます。

      1. **[追加の設定]** の **[エンティティ正規表現パターン]** - **[リンク]**、**[ページ]**、**[イベント]** に正規表現パターンを追加して、すべてのドキュメントを同期する代わりに特定のエンティティを含めます。

      1. **[正規表現パターン]** - すべてのドキュメントを同期する代わりに、**[ファイルパス]**、**[ファイル名]**、**[ファイルタイプ]**、**[OneNote セクション名]**、**[OneNote ページ名]** でファイルを含めたり除外したりする正規表現パターンを追加します。最大 100 個を追加できます。
**注記**  
OneNote のクローリングは、SharePoint アプリ専用認証にのみ使用できます。

   1. **[同期モード]** - データソースのコンテンツが変更されたときのインデックスの更新方法を選択します。 Amazon Kendra でデータソースを初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択していない場合でも、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。
      + 完全同期: データソースがインデックスと同期されるたびに、既存のコンテンツを置き換えて、すべてのコンテンツのインデックスを新たに作成します。
      + 新しい変更された同期: データソースがインデックスと同期するたびに、新しいコンテンツと変更されたコンテンツのみをインデックス化します。 Amazon Kendra は、データソースのメカニズムを使用して、前回の同期以降に変更されたコンテンツの変更とインデックスコンテンツを追跡できます。
      + 新規作成、変更、削除の同期: データソースがインデックスと同期するたびに、新規作成、変更、削除されたコンテンツのみのインデックスを作成します。 Amazon Kendra は、データソースのメカニズムを利用してコンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツのインデックスを作成することができます。

   1. **[同期実行スケジュール]** の **[頻度]** - データソースコンテンツを同期してインデックスを更新する頻度を選択します。

   1. [**次へ**] を選択します。

1. **[フィールドマッピングを設定]** ページで、次の情報を入力します。

   1. **デフォルトのデータソースフィールド** — インデックスにマッピングする Amazon Kendra 生成されたデフォルトのデータソースフィールドから選択します。

   1.  **[フィールドを追加]** - カスタムデータソースフィールドを追加して、マッピング先のインデックスフィールド名とフィールドデータタイプを作成します。

   1. [**次へ**] を選択します。

1. **[確認と作成]** ページで、入力した情報が正しいことを確認し、**[データソースを追加]** を選択します。このページで情報の編集を選択することもできます。データソースが正常に追加されると、データソースが **[データソース]** ページに表示されます。

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

**SharePoint Amazon Kendra に接続するには**

[TemplateConfiguration](https://docs.aws.amazon.com/kendra/latest/APIReference/API_TemplateConfiguration.html) API を使用して[データソーススキーマ](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html)の JSON を指定する必要があります。これには、以下の情報を入力する必要があります。
+ **[データソース]** — [https://docs.aws.amazon.com/kendra/latest/dg/API_TemplateConfiguration.html](https://docs.aws.amazon.com/kendra/latest/dg/API_TemplateConfiguration.html) JSON スキーマを使用する場合は、データソースタイプを `SHAREPOINTV2` と指定します。また、[https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html) API を呼び出す場合は、データソースを `TEMPLATE` と指定します。
+ **リポジトリエンドポイントメタデータ** - SharePoint インスタンスの `tenantID` `domain` と `siteUrls` を指定します。
+ **同期モード** — データソースコンテンツが変更されたときに Amazon Kendra がインデックスを更新する方法を指定します。データソースを Amazon Kendra と初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択していない場合でも、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。以下のいずれかから選択できます。
  + `FORCED_FULL_CRAWL` は、データソースがインデックスと同期されるたびに、既存のコンテンツを置き換えて、すべてのコンテンツのインデックスを新たに作成します。
  + `FULL_CRAWL` は、データソースがインデックスと同期するたびに、新規、変更、削除されたコンテンツのインデックスのみを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツのインデックスを作成できます。
  + `CHANGE_LOG` は、データソースがインデックスと同期するたびに、新規および変更されたコンテンツのインデックスのみを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツのインデックスを作成できます。
+ **[ID クローラー]** - Amazon Kendraの ID クローラーを有効にするかどうかを指定します。ID クローラーは、ドキュメントのアクセスコントロールリスト (ACL) 情報を使用して、ユーザーまたはそのグループのドキュメントへのアクセス権に基づいて検索結果をフィルタリングします。ドキュメントの ACL があり、ACL を使用することを選択した場合は、 Amazon Kendra ID クローラをオンにして検索結果の[ユーザーコンテキストフィルタリング](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)を設定することもできます。それ以外の場合は、ID クローラーがオフになっている場合、すべてのドキュメントは公開され検索可能になります。ID クローラーがオフになっているときにドキュメントのアクセスコントロールを使用する場合は、代わりに [PutPrincipalMapping](https://docs.aws.amazon.com/kendra/latest/APIReference/API_PutPrincipalMapping.html) API を使用して、ユーザーコンテキストフィルタリング用にユーザーとグループのアクセス情報をアップロードすることができます。
**注記**  
ID クローラーは、`crawlAcl` を `true` に設定した場合にのみ使用できます。
+ **リポジトリの追加プロパティ** - 以下を指定します。
  + (Azure AD のみ) Azure AD の自己署名 X.509 証明書を保存するために使用した `s3bucketName` と `s3certificateName`。
  + 使用する認証タイプ (`auth_Type`) (`OAuth2`、`OAuth2App`、`OAuth2Certificate`、`Basic`、`OAuth2_RefreshToken`、`NTLM`、`Kerberos` など)。
  + 使用するバージョン (`version`) (`Server` または `Online`)。`Server` を使用する場合、`onPremVersion` を `2013`、`2016`、`2019`、または `SubscriptionEdition` としてさらに指定できます。
+ **シークレット Amazon リソースネーム (ARN)** — SharePoint アカウントで作成した認証情報を含む Secrets Manager シークレットの Amazon リソースネーム (ARN) を指定します。

  SharePoint Online を使用している場合は、基本、OAuth 2.0、Azure AD アプリ専用、SharePoint アプリ専用の認証を選択できます。各認証オプションでシークレットに含める必要がある最小の JSON 構造を次に示します。
  + **基本認証**

    ```
    {
        "userName": "{{SharePoint account user name}}",
        "password": "{{SharePoint account password}}"
    }
    ```
  + **OAuth 2.0 認証**

    ```
    {
        "clientId": "{{client id generated when registering SharePoint with Azure AD}}",
        "clientSecret": "{{client secret generated when registering SharePoint with Azure AD}}",
        "userName": "{{SharePoint account user name}}",
        "password": "{{SharePoint account password}}"
    }
    ```
  + **Azure AD アプリ専用認証**

    ```
    {
        "clientId": "{{client id generated when registering SharePoint with Azure AD}}",
        "privateKey": "{{private key to authorize connection with Azure AD}}"
    }
    ```
  + **SharePoint アプリ専用認証**

    ```
    {
        "clientId": "{{client id generated when registering SharePoint for App Only at Tenant Level}}",
        "clientSecret": "{{client secret generated when registering SharePoint for App Only at Tenant Level}}",
        "adClientId": "{{client id generated while registering SharePoint with Azure AD}}",
        "adClientSecret": "{{client secret generated while registering SharePoint with Azure AD}}"
    }
    ```
  + **OAuth 2.0 更新トークン認証**

    ```
    {
        "clientId": "{{client id generated when registering SharePoint with Azure AD}}",
        "clientSecret": "{{client secret generated when registering SharePoint with Azure AD}}",
        "refreshToken": "{{refresh token generated to connect to SharePoint}}"
    }
    ```

  SharePoint Server を使用している場合は、SharePoint アプリケーション専用認証、NTLM 認証、Kerberos 認証のいずれかを選択できます。各認証オプションでシークレットに含める必要がある最小の JSON 構造を次に示します。
  + **SharePoint アプリ専用認証**

    ```
    {
        "siteUrlsHash": "{{Hash representation of SharePoint site URLs}}",
        "clientId": "{{client id generated when registering SharePoint for App Only at Site Level}}",
        "clientSecret": "{{client secret generated when registering SharePoint for App Only at Site Level}}" 
    }
    ```
  + **IDP 認可からのドメインによる SharePoint アプリ専用認証**

    ```
    {
        "siteUrlsHash": "{{Hash representation of SharePoint site URLs}}",
        "clientId": "{{client id generated when registering SharePoint for App Only at Site Level}}",
        "clientSecret": "{{client secret generated when registering SharePoint for App Only at Site Level}}",
        "ldapUrl": "{{LDAP Account url eg. ldap://example.com:389}}",
        "baseDn": "{{LDAP Account base dn eg. CN=Users,DC=sharepoint,DC=com}}",
        "ldapUser": "{{LDAP account user name}}",
        "ldapPassword": "{{LDAP account password}}"
    }
    ```
  + **(サーバーのみ) NTLM または Kerberos 認証**

    ```
    {
        "siteUrlsHash": "{{Hash representation of SharePoint site URLs}}",
        "userName": "{{SharePoint account user name}}",
        "password": "{{SharePoint account password}}"
    }
    ```
  + **(サーバーのみ) IDP 認可からのドメインによる NTLM または Kerberos 認証**

    ```
    {
        "siteUrlsHash": "{{Hash representation of SharePoint site URLs}}",
        "userName": "{{SharePoint account user name}}",
        "password": "{{SharePoint account password}}",
        "ldapUrl": "{{ldap://example.com:389}}",
        "baseDn": "{{CN=Users,DC=sharepoint,DC=com}}",
        "ldapUser": "{{LDAP account user name}}",
        "ldapPassword": "{{LDAP account password}}"
    }
    ```
+ **IAM role** — を呼び出し`CreateDataSource`て、シー Secrets Manager クレットにアクセスするためのアクセス許可を IAM ロールに提供し、SharePoint コネクタと に必要なパブリック APIs を呼び出す`RoleArn`タイミングを指定します Amazon Kendra。詳細については、「[IAM roles for SharePoint data sources](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)」を参照してください。

オプションで、次の機能を追加することもできます。
+  **[仮想プライベートクラウド (VPC)]** - `VpcConfiguration` で `CreateDataSource` を呼び出すタイミングを指定します。詳細については、「[を使用する Amazon Kendra ように を設定する Amazon VPC](vpc-configuration.md)」を参照してください。
+  **包含フィルターと除外フィルター** - 特定のファイル、OneNote、その他のコンテンツを含めるか除外するかを指定できます。
**注記**  
ほとんどのデータソースは、フィルターと呼ばれる包含または除外パターンである正規表現パターンを使用しています。包含フィルターを指定すると、包含フィルターに一致するコンテンツのみのインデックスが作成されます。包含フィルターに一致しないドキュメントのインデックスは作成されません。包含フィルターと除外フィルターを指定した場合、除外フィルターに一致するドキュメントは、包含フィルターと一致してもインデックスは作成されません。
+  **フィールドマッピング** - 選択すると、SharePoint データソースフィールドを Amazon Kendra インデックスフィールドにマッピングします。詳細については、「[データソースフィールドのマッピング](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html)」を参照してください。
**注記**  
がドキュメント Amazon Kendra を検索するには、ドキュメント本文フィールドまたはドキュメントと同等のドキュメント本文が必要です。データソースのドキュメント本文フィールド名をインデックスフィールド名 `_document_body` にマッピングする必要があります。その他のすべてのフィールドはオプションです。

設定が必要なその他の重要な JSON キーのリストについては、「[SharePoint テンプレートスキーマ](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html#ds-schema-sharepoint)」を参照してください。

------

## 注意事項
<a name="sharepoint-notes"></a>
+ コネクタは **[ファイル]** エンティティのカスタムフィールドマッピングのみをサポートします。
+ SharePoint Server のすべてのバージョンで、ACL トークンは小文字にする必要があります。**[IDP からのドメイン付き E メール ID]** および **[カスタムドメイン付き E メール ID]** の場合 (例: {{user@sharepoint2019.com}})。**[ドメイン\\ドメイン付きユーザー]** ACL の場合 (例: {{sharepoint2013\\user}})。
+ アクセスコントロール (ACL) が有効になっている場合、SharePoint API の制限により、[新規または変更されたコンテンツのみを同期] オプションを使用することはできません。この同期モードを使用する必要がある場合は、代わりに「完全同期」または「新規、変更済み、または削除済みコンテンツ同期」モードを使用するか、ACL を無効にすることをお勧めします。
+ このコネクタは、SharePoint 2013 の変更ログモード/**新規または変更されたコンテンツの同期**をサポートしていません。
+ エンティティ名の名前に `%` 文字が含まれている場合、API の制限によりコネクタはこれらのファイルをスキップします。
+ OneNote をクロールできるのは、テナント ID を使用し、SharePoint Online で OAuth 2.0、OAuth 2.0 更新トークン、または SharePoint アプリケーション専用認証が有効になっているコネクタだけです。
+ コネクタは、ドキュメントの名前が変更された場合でも、OneNote ドキュメントの最初のセクションを既定の名前のみでクロールします。
+ コネクタは、SharePoint 2019、SharePoint Online、およびサブスクリプションエディションのリンクを、クロールするエンティティとして **[リンク]** に加えて **[ページ]** と **[ファイル]** が選択されている場合にのみクロールします。
+ クロールするエンティティとしてリンクが選択されている場合、コネクタは SharePoint 2013 と SharePoint 2016 の **[リンク]** をクロールします。
+ コネクタがリストの添付ファイルとコメントをクロールするのは、クロール対象のエンティティとして **[リストデータ]** も選択されている場合のみです。
+ コネクタがイベント添付ファイルをクロールするのは、クロール対象のエンティティとして **[イベント]** も選択されている場合のみです。
+ SharePoint Online バージョンの場合、ACL トークンは小文字になります。例えば、Azure ポータルの **[ユーザープリンシパル名]** が {{MaryMajor@domain.com}} の場合、SharePoint コネクタの ACL トークンは {{marymajor@domain.com}} になります。
+ SharePoint Online および Server 用の **[ID クローラー]** では、ネストされたグループをクロールする場合、AD グループクローリングだけでなくローカルクローリングも有効にする必要があります。
+ SharePoint Online を使用していて、Azure ポータルのユーザープリンシパル名が大文字と小文字の組み合わせである場合、SharePoint API は内部的にこれを小文字に変換します。このため、 Amazon Kendra SharePoint コネクタは ACL を小文字に設定します。