

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

# ユーザーまたはロールがナレッジベースを作成および管理するためのアクセス許可を設定する
<a name="knowledge-base-prereq-permissions-general"></a>

Amazon Bedrock ナレッジベースに関連するアクションを実行するユーザーまたはロールには、アクションを実行するアクセス許可を付与するポリシーをアタッチする必要があります。ユーザーがこれらのナレッジベースから情報を取得し、そこからレスポンスを生成できるようにするアクセス許可について説明します。

以下のセクションを展開して、特定のユースケースのアクセス許可を設定する方法を確認してください。

## ロールにナレッジベースの作成と管理を許可する
<a name="w2aac32c10c21b7b1"></a>

ナレッジベースの作成、構造化データストアへの接続、ナレッジベースの管理、データソースからナレッジベースへの取り込みジョブの開始と管理を IAM ロールに許可するには、`KnowledgeBase` アクション、`DataSource` アクション、`IngestionJob` アクションへのアクセス許可を付与する必要があります。ナレッジベースにタグを付けるアクセス許可を付与するには、`bedrock:TagResource` と `bedrock:UntagResource` へのアクセス許可を追加します。

**注記**  
ユーザーまたはロールに [AmazonBedrockFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockFullAccess) AWS 管理ポリシーがアタッチされている場合は、この前提条件をスキップできます。

これらのアクションの実行をロールに許可するには、次のポリシーをロールにアタッチします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CreateKB",
            "Effect": "Allow",
            "Action": [
                "bedrock:CreateKnowledgeBase"
            ],
            "Resource": "*"
        },
        {
            "Sid": "KBDataSourceManagement",
            "Effect": "Allow",
            "Action": [
                "bedrock:GetKnowledgeBase",
                "bedrock:ListKnowledgeBases",
                "bedrock:UpdateKnowledgeBase",
                "bedrock:DeleteKnowledgeBase",
                "bedrock:StartIngestionJob",
                "bedrock:GetIngestionJob",
                "bedrock:ListIngestionJobs",
                "bedrock:StopIngestionJob",
                "bedrock:TagResource",
                "bedrock:UntagResource"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:knowledge-base/{{*}}"
            ]
        }
    ]
}
```

------

ナレッジベースを作成したら、ワイルドカード ({{\*}}) を作成したナレッジベースの ID に置き換えて、`KBDataSourceManagement` ステートメントのアクセス許可の範囲を絞り込むことをお勧めします。

## ロールにナレッジベース API オペレーションの実行を許可する
<a name="w2aac32c10c21b7b3"></a>

このセクションでは、ナレッジベースに対して `Retrieve` API オペレーションと `RetrieveAndGenerate` API オペレーションを実行するために必要なアクセス許可について説明します。

次のポリシーをロールにアタッチします。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "GetKB",
            "Effect": "Allow",
            "Action": [
                "bedrock:GetKnowledgeBase"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:knowledge-base/{{${KnowledgeBaseId}}}"
            ]
        },
        {
            "Sid": "Retrieve",
            "Effect": "Allow",
            "Action": [
                "bedrock:Retrieve"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:knowledge-base/{{${KnowledgeBaseId}}}"
            ]
        },
        {
            "Sid": "RetrieveAndGenerate",
            "Effect": "Allow",
            "Action": [
                "bedrock:RetrieveAndGenerate"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

ユースケースに応じて、不要なステートメントは削除できます。
+ `GetKB` ステートメントは、ナレッジベースの情報を取得するために使用されます。
+ `Retrieve` ステートメントは、[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Retrieve.html) を呼び出してデータストアからデータを取得するために必要です。
+ `RetrieveAndGenerate` ステートメントは、[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) を呼び出してデータストアからデータを取得し、そのデータに基づいてレスポンスを生成するために必要です。

## RetrieveAndGenerate の基盤モデルへのアクセスをリクエストする
<a name="knowledge-base-prereq-structured-model-access"></a>

[https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) を使用してデータソースから取得したデータに基づいてレスポンスを生成する場合は、「[モデルへのアクセスをリクエストする](model-access.md)」の手順に従って、生成に使用する基盤モデルへのアクセスをリクエストします。

アクセス許可をさらに制限するには、アクションを省略するか、アクセス許可をフィルタリングするためのリソースや条件キーを指定できます。アクション、リソース、条件キーの詳細については、「*サービス認可リファレンス*」の以下のトピックを参照してください。
+ [Amazon Bedrock で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-actions-as-permissions) – アクション、`Resource` フィールドで範囲を定義できるリソースタイプ、`Condition` フィールドでアクセス許可をフィルタリングできる条件キーについて説明しています。
+ [Amazon Bedrock で定義されるリソースタイプ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-resources-for-iam-policies) – Amazon Bedrock のリソースタイプについて説明しています。
+ [Amazon Bedrock の条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) – Amazon Bedrock の条件キーについて説明しています。