

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

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

Atlassian Confluence は、プロジェクト計画、ソフトウェア開発、製品管理の共有、保存、作業を目的とした共同作業管理ツールです。Amazon Bedrock の [AWS マネジメントコンソールまたは CreateDataSource API を使用して、Amazon Bedrock](https://console.aws.amazon.com/bedrock/home) ナレッジベースの Confluence インスタンスに接続できます (「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) 

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

Amazon Bedrock は、Confluence Cloud インスタンスへの接続をサポートしています。現在、このデータソースで使用できるのは Amazon OpenSearch Serverless ベクトルストアのみです。

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

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

## サポートされている機能
<a name="supported-features-confluence-connector"></a>
+ メインドキュメントフィールドの自動検出
+ 包含/除外コンテンツフィルター
+ 追加、更新、削除されたコンテンツの増分同期
+ OAuth 2.0 認証、Confluence API トークンを使用した認証

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

**Confluence で以下を確認してください。**
+ Confluence インスタンスの URL をメモします。例えば、Confluence Cloud の場合は、{{https://example.atlassian.net}} です。Confluence Cloud の URL は、{{.atlassian.net}} で終わるベース URL である必要があります。
+ Amazon Bedrock が Confluence Cloud インスタンスに接続できるように、ユーザー名 (管理者アカウントの E メール) とパスワード (Confluence API トークン) を含む基本的な認証情報を設定します。Confluence API トークンの作成方法については、Atlassian ウェブサイトの「[Manage API tokens for your Atlassian account](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/#Create-an-API-token)」を参照してください。
+ (オプション) アプリケーションキー、アプリケーションシークレット、アクセストークン、および更新トークンの認証情報を使用して OAuth 2.0 アプリケーションを設定します。詳細については、Atlassian ウェブサイトの「[OAuth 2.0 apps](https://developer.atlassian.com/cloud/confluence/oauth-2-3lo-apps/)」を参照してください。
+ OAuth 2.0 アプリが Confluence に接続するには、特定の読み取りアクセス許可またはスコープを有効にする必要があります。

  Confluence API:
  + offline\_access
  + read:content:confluence – 詳細なコンテンツを表示する 
  + read:content-details:confluence – コンテンツの詳細を表示する 
  + read:space-details:confluence – スペースの詳細を表示する
  + read:audit-log:confluence – 監査レコードを表示する 
  + read:page:confluence – ページを表示する 
  + read:attachment:confluence – コンテンツ添付ファイルを表示およびダウンロードする 
  + read:blogpost:confluence – ブログ投稿を表示する 
  + read:custom-content:confluence – カスタムコンテンツを表示する 
  + read:comment:confluence – コメントを表示する 
  + read:template:confluence – コンテンツテンプレートを表示する 
  + read:label:confluence – ラベルを表示する 
  + read:watcher:confluence – コンテンツウォッチャーを表示する 
  + read:relation:confluence – エンティティ関係を表示する 
  + read:user:confluence – ユーザーの詳細を表示する 
  + read:configuration:confluence – Confluence 設定を表示する 
  + read:space:confluence – スペースの詳細を表示する 
  + read:space.property:confluence – スペースプロパティを表示する 
  + read:user.property:confluence – ユーザープロパティを表示する 
  + read:space.setting:confluence – スペース設定を表示する 
  + read:analytics.content:confluence – コンテンツの分析を表示する
  + read:content.property:confluence – コンテンツプロパティを表示する
  + read:content.metadata:confluence – コンテンツの概要を表示する 
  + read:inlinetask:confluence – タスクを表示する 
  + read:task:confluence – タスクを表示する 
  + read:whiteboard:confluence – ホワイトボードを表示する 
  + read:app-data:confluence – アプリデータを読み取る 
  + read:folder:confluence - フォルダを表示する
  + read:embed:confluence - スマートリンクデータを表示する

** 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-confluence-connector"></a>

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

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

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

### メインドキュメントフィールドの自動検出
<a name="ds-confluence-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-confluence-inclusion-exclusion"></a>

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

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

包含/除外フィルターは、次のコンテンツタイプに適用できます。
+ `Space`: 一意のスペースキー
+ `Page`: メインページのタイトル
+ `Blog`: メインブログのタイトル
+ `Comment`: 特定のページまたはブログに属するコメント。{{Re: Page/Blog Title}} を指定
+ `Attachment`: 拡張子付きの添付ファイル名

### 増分同期
<a name="ds-confluence-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-confluence-secret-auth-credentials"></a>

(基本認証を使用する場合) AWS Secrets Manager の認証情報には、次のキーと値のペアを含める必要があります。
+ `username`: {{Atlassian アカウントの管理者ユーザーの E メールアドレス}}
+ `password`: {{Confluence API トークン}}

(OAuth 2.0 認証を使用する場合) AWS Secrets Manager の認証情報には、次のキーと値のペアを含める必要があります。
+ `confluenceAppKey`: {{アプリキー}}
+ `confluenceAppSecret`: {{アプリシークレット}}
+ `confluenceAccessToken`: {{アプリアクセストークン}}
+ `confluenceRefreshToken`: {{アプリ更新トークン}}

**注記**  
Confluence OAuth2.0 の**アクセス**トークンの有効期限は、デフォルトでは 60 分です。データソースの同期 (同期ジョブ) 中にアクセストークンの有効期限が切れた場合、Amazon Bedrock は、指定された**更新**トークンを使用してアクセストークンを再生成します。その際は、アクセストークンと更新トークンの両方が更新されます。現在の同期ジョブから次の同期ジョブまでトークンを最新の状態で維持するために、Amazon Bedrock にはナレッジベースの IAM ロールの一部であるシークレット認証情報の書き込み/保存のアクセス許可が必要です。

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

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

**Confluence インスタンスをナレッジベースに接続する**

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

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

1. Confluence インスタンス URL を指定します。例えば、Confluence Cloud の場合は、{{https://example.atlassian.net}} です。Confluence Cloud の URL は、{{.atlassian.net}} で終わるベース URL である必要があります。

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

1. Confluence インスタンスに接続するための認証情報を指定します。
   + 基本認証については、 に移動 AWS Secrets Manager してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、ユーザー名として Atlassian アカウントの管理者ユーザーの E メールアドレスと、パスワードの代わりに Confluence API トークンが含まれている必要があります。Confluence API トークンの作成方法については、Atlassian ウェブサイトの「[Manage API tokens for your Atlassian account](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/#Create-an-API-token)」を参照してください。
   + OAuth 2.0 認証の場合は、 に移動 AWS Secrets Manager してシークレット認証情報を追加するか、作成したシークレットに既存の Amazon リソースネーム (ARN) を使用します。シークレットには、Confluence アプリケーションキー、アプリケーションシークレット、アクセストークン、および更新トークンが含まれている必要があります。詳細については、Atlassian ウェブサイトの「[OAuth 2.0 apps](https://developer.atlassian.com/cloud/confluence/oauth-2-3lo-apps/)」を参照してください。

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 ナレッジベースの Confluence Cloud に接続するための設定の例です。または 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 create-data-source \
 --name "Confluence Cloud/SaaS connector" \
 --description "Confluence Cloud/SaaS data source connector for Amazon Bedrock to use content in Confluence" \
 --knowledge-base-id "your-knowledge-base-id" \
 --data-source-configuration file://confluence-bedrock-connector-configuration.json \
 --data-deletion-policy "DELETE" \
 --vector-ingestion-configuration '{"chunkingConfiguration":[{"chunkingStrategy":"FIXED_SIZE","fixedSizeChunkingConfiguration":[{"maxTokens":"100","overlapPercentage":"10"}]}]}'

confluence-bedrock-connector-configuration.json
{
    "confluenceConfiguration": {
        "sourceConfiguration": {
            "hostUrl": "https://example.atlassian.net",
            "hostType": "SAAS",
            "authType": "OAUTH2_CLIENT_CREDENTIALS",
            "credentialsSecretArn": "arn:aws::secretsmanager:your-region:secret:AmazonBedrock-Confluence"
        },
        "crawlerConfiguration": {
            "filterConfiguration": {
                "type": "PATTERN",
                "patternObjectFilter": {
                    "filters": [
                        {
                            "objectType": "Attachment",
                            "inclusionFilters": [
                                ".*\\.pdf"
                            ],
                            "exclusionFilters": [
                                ".*private.*\\.pdf"
                            ]
                        }
                    ]
                }
            }
        }
    },
    "type": "CONFLUENCE"
}
```

------