

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Création d’un rôle de service pour les bases de connaissances Amazon Bedrock
<a name="kb-permissions"></a>

Pour utiliser un rôle personnalisé pour une base de connaissances au lieu de celui créé automatiquement par Amazon Bedrock, créez un rôle IAM et associez les autorisations suivantes en suivant les étapes de la section [Création d'un rôle pour déléguer des autorisations à un AWS service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html). N’incluez que les autorisations nécessaires pour votre propre sécurité.

**Note**  
Une politique ne peut pas être partagée entre plusieurs rôles lorsque le rôle de service est utilisé.
+ Relation d’approbation
+ Accès aux modèles de base Amazon Bedrock
+ Accès à la source de données dans laquelle vous stockez vos données
+ (Si vous créez une base de données vectorielle dans Amazon OpenSearch Service) Accès à votre collection OpenSearch de services
+ (Si vous créez une base de données vectorielles dans Amazon Aurora) Accès à votre cluster Aurora
+ (Si vous créez une base de données vectorielle dans Pinecone ouRedis Enterprise Cloud) Autorisations AWS Secrets Manager pour authentifier votre compte Pinecone OR Redis Enterprise Cloud
+ (Facultatif) Si vous chiffrez l’une des ressources suivantes avec une clé KMS, autorisations permettant de déchiffrer la clé (voir [Chiffrement des ressources des bases de connaissances](encryption-kb.md)).
  + Votre base de connaissances
  + Sources de données pour votre base de connaissances
  + Votre base de données vectorielle dans Amazon OpenSearch Service
  + Le secret de votre base de données vectorielle tierce dans AWS Secrets Manager
  + Une tâche d’ingestion de données

**Topics**
+ [Relation d’approbation](#kb-permissions-trust)
+ [Autorisations d'accès aux modèles Amazon Bedrock](#kb-permissions-access-models)
+ [Autorisations d’accès aux sources de données](#kb-permissions-access-ds)
+ [Autorisations permettant de déchiffrer votre AWS KMS clé pour les sources de données chiffrées dans Amazon S3](#kb-permissions-kms-datasource)
+ [Autorisations de discussion avec votre document](#kb-permissions-chatdoc)
+ [Autorisations pour le contenu multimodal](#kb-permissions-multimodal)
+ [Autorisations pour accéder à votre index GenAI Amazon Kendra](#kb-permissions-kendra)
+ [Autorisations d'accès à votre base de données vectorielle dans Amazon OpenSearch Serverless](#kb-permissions-oss)
+ [Autorisations d'accès à votre base de données vectorielle dans OpenSearch Managed Clusters](#kb-permissions-osm)
+ [Autorisations d’accès à votre cluster de bases de données Amazon Aurora](#kb-permissions-rds)
+ [Autorisations permettant d’accéder à votre base de données vectorielles dans l’analytique Amazon Neptune](#kb-permissions-neptune)
+ [Autorisations permettant d’accéder à votre magasin de vecteurs dans Amazon S3 Vectors](#kb-permissions-s3vectors)
+ [Autorisations d'accès à une base de données vectorielle configurée avec un AWS Secrets Manager secret](#kb-permissions-secret)
+ [Autorisations permettant AWS de gérer une AWS KMS clé pour le stockage de données transitoires lors de l'ingestion de données](#kb-permissions-kms-ingestion)
+ [Autorisations AWS permettant de gérer une source de données à partir du AWS compte d'un autre utilisateur.](#kb-permissions-otherds)

## Relation d’approbation
<a name="kb-permissions-trust"></a>

La politique suivante permet à Amazon Bedrock d’endosser ce rôle, de créer des bases de connaissances et de les gérer. L'exemple suivant illustre un exemple de politique que vous pouvez utiliser. Vous pouvez restreindre la portée de l’autorisation en utilisant une ou plusieurs clés contextuelles de condition globale. Pour plus d’informations, consultez [Clés contextuelles de condition globale AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html). Définissez la valeur `aws:SourceAccount` sur l’ID de votre compte. Vous pouvez utiliser la condition `ArnEquals` ou `ArnLike` pour limiter le champ d’application à des bases de connaissances spécifiques.

**Note**  
Pour des raisons de sécurité, il est recommandé de les *\$1* remplacer par une base de connaissances spécifique une IDs fois que vous les avez créées.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/*"
                }
            }
        }
    ]
}
```

------

## Autorisations d'accès aux modèles Amazon Bedrock
<a name="kb-permissions-access-models"></a>

Associez la politique suivante pour accorder au rôle l’autorisation d’utiliser les modèles Amazon Bedrock pour intégrer vos données sources.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:ListFoundationModels",
                "bedrock:ListCustomModels"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-embed-text-v1",
                "arn:aws:bedrock:us-east-1::foundation-model/cohere.embed-english-v3",
                "arn:aws:bedrock:us-east-1::foundation-model/cohere.embed-multilingual-v3"
            ]
        }
    ]
}
```

------

## Autorisations d’accès aux sources de données
<a name="kb-permissions-access-ds"></a>

Sélectionnez l’une des sources de données suivantes pour associer les autorisations nécessaires au rôle.

**Topics**
+ [Autorisations d’accès à votre source de données Amazon S3](#kb-permissions-access-s3)
+ [Autorisations d’accès à votre source de données Confluence](#kb-permissions-access-confluence)
+ [Autorisations d'accès à votre source SharePoint de données Microsoft](#kb-permissions-access-sharepoint)
+ [Autorisations d’accès à votre source de données Salesforce](#kb-permissions-access-salesforce)

### Autorisations d’accès à votre source de données Amazon S3
<a name="kb-permissions-access-s3"></a>

Si votre source de données est Amazon S3, associez la politique suivante pour accorder au rôle l’autorisation d’accéder au compartiment S3 auquel vous vous connecterez en tant que source de données.

Si vous avez chiffré la source de données à l'aide d'une AWS KMS clé, associez des autorisations pour déchiffrer la clé au [Autorisations pour déchiffrer votre AWS KMS clé pour vos sources de données dans Amazon S3](encryption-kb.md#encryption-kb-ds) rôle en suivant les étapes décrites dans.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ListBucketStatement",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "123456789012"
                }
            }
        },
        {
            "Sid": "S3GetObjectStatement",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "123456789012"
                }
            }
        }
    ]
}
```

------

### Autorisations d’accès à votre source de données Confluence
<a name="kb-permissions-access-confluence"></a>

**Note**  
Le connecteur de source de données Confluence est proposé en version préliminaire et peut faire l’objet de modifications.

Associez la politique suivante pour accorder au rôle l’autorisation d’accéder à Confluence.

**Note**  
`secretsmanager:PutSecretValue`n'est nécessaire que si vous utilisez l'authentification OAuth 2.0 avec un jeton d'actualisation.  
Le jeton d'**accès** Confluence OAuth2 2.0 a un délai d'expiration par défaut de 60 minutes. S’il expire alors que votre source de données est en cours de synchronisation (tâche de synchronisation), Amazon Bedrock utilise le jeton d’**actualisation** fourni pour le régénérer. Cette régénération actualise à la fois les jetons d’accès et ceux d’actualisation. Pour maintenir les jetons à jour entre la tâche de synchronisation en cours et la tâche de synchronisation suivante, Amazon Bedrock a besoin d' write/put autorisations pour vos informations d'identification secrètes.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue",
                "secretsmanager:PutSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:123456789012:secret:SecretId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:123456789012:key/KeyId"
            ],
            "Condition": {
                "StringLike": {
                    "kms:ViaService": [
                        "secretsmanager.us-east-1.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

### Autorisations d'accès à votre source SharePoint de données Microsoft
<a name="kb-permissions-access-sharepoint"></a>

**Note**  
SharePoint le connecteur de source de données est en version préliminaire et est sujet à modification.

Joignez la politique suivante pour fournir des autorisations d'accès au rôle SharePoint.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:123456789012:secret:SecretId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:123456789012:key/KeyId"
            ],
            "Condition": {
                "StringLike": {
                    "kms:ViaService": [
                        "secretsmanager.us-east-1.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

### Autorisations d’accès à votre source de données Salesforce
<a name="kb-permissions-access-salesforce"></a>

**Note**  
Le connecteur de source de données Salesforce est proposé en version préliminaire et peut faire l’objet de modifications.

Associez la politique suivante pour accorder au rôle l’autorisation d’accéder à Salesforce.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:123456789012:secret:SecretId"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:123456789012:key/KeyId"
            ],
            "Condition": {
                "StringLike": {
                    "kms:ViaService": [
                        "secretsmanager.us-east-1.amazonaws.com"
                    ]
                }
            }
        }
    ]
}
```

------

## Autorisations permettant de déchiffrer votre AWS KMS clé pour les sources de données chiffrées dans Amazon S3
<a name="kb-permissions-kms-datasource"></a>

Si vous avez chiffré vos sources de données dans Amazon S3 à l'aide d'une AWS KMS clé, associez la politique suivante à votre rôle de service Amazon Bedrock Knowledge Bases afin de permettre à Amazon Bedrock de déchiffrer votre clé. Remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et le numéro de compte auxquels appartient la clé. *\$1\$1KeyId\$1*Remplacez-le par l'identifiant de votre AWS KMS clé.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "kms:Decrypt"
        ],
        "Resource": [
            "arn:aws:kms:${Region}:${AccountId}:key/${KeyId}"
        ],
        "Condition": {
            "StringEquals": {
                "kms:ViaService": [
                    "s3.${Region}.amazonaws.com"
                ]
            }
        }
    }]
}
```

## Autorisations de discussion avec votre document
<a name="kb-permissions-chatdoc"></a>

Associez la politique suivante pour accorder au rôle l’autorisation d’utiliser les modèles Amazon Bedrock pour discuter avec votre document :

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
			"Effect": "Allow",
			"Action": [
				"bedrock:RetrieveAndGenerate"
			],
			"Resource": "*"
		}
    ]
}
```

------

Si vous souhaitez uniquement autoriser un utilisateur à discuter avec votre document (et non à accéder à toutes les bases de connaissances `RetrieveAndGenerate`), appliquez la politique suivante :

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
			"Effect": "Allow",
			"Action": [
				"bedrock:RetrieveAndGenerate"
			],
			"Resource": "*"
		},
        {
			"Effect": "Deny",
			"Action": [
				"bedrock:Retrieve"
			],
			"Resource": "*"
		}
    ]
}
```

------

Si vous souhaitez à la fois discuter avec votre document et l'utiliser `RetrieveAndGenerate` sur une base de connaissances spécifique*\$1\$1KnowledgeBaseArn\$1*, fournissez un et appliquez la politique suivante :

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

****  

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

------

## Autorisations pour le contenu multimodal
<a name="kb-permissions-multimodal"></a>

Lorsque vous travaillez avec du contenu multimodal (images, audio, vidéo), des autorisations supplémentaires sont requises en fonction de votre approche de traitement.

### Autorisations Nova Multimodal Embeddings
<a name="kb-permissions-multimodal-mme"></a>

Lorsque vous utilisez Nova Multimodal Embeddings, attachez la politique suivante pour fournir des autorisations pour l'invocation de modèles asynchrones :

```
{
    "Sid": "BedrockInvokeModelStatement",
    "Effect": "Allow",
    "Action": ["bedrock:InvokeModel"],
    "Resource": [
        "arn:aws:bedrock:us-east-1::foundation-model/amazon.nova-*-multimodal-embeddings-*",
        "arn:aws:bedrock:us-east-1::async-invoke/*"
    ],
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": ""
        }
    }
},
{
    "Sid": "BedrockGetAsyncInvokeStatement",
    "Effect": "Allow",
    "Action": ["bedrock:GetAsyncInvoke"],
    "Resource": ["arn:aws:bedrock:us-east-1::async-invoke/*"],
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": ""
        }
    }
}
```

### Autorisations d'automatisation des données Bedrock (BDA)
<a name="kb-permissions-multimodal-bda"></a>

Lorsque vous utilisez BDA pour traiter du contenu multimodal, joignez la politique suivante :

```
{
    "Sid": "BDAInvokeStatement",
    "Effect": "Allow",
    "Action": ["bedrock:InvokeDataAutomationAsync"],
    "Resource": [
        "arn:aws:bedrock:us-east-1:aws:data-automation-project/public-rag-default",
        "arn:aws:bedrock:us-east-1::data-automation-profile/*"
    ]
},
{
    "Sid": "BDAGetStatement",
    "Effect": "Allow",
    "Action": ["bedrock:GetDataAutomationStatus"],
    "Resource": "arn:aws:bedrock:us-east-1::data-automation-invocation/*"
}
```

Si vous utilisez des AWS KMS clés gérées par le client avec BDA, joignez également la politique suivante. Remplacez *account-id**region*, et *key-id* par vos valeurs spécifiques :

```
{
    "Sid": "KmsPermissionStatementForBDA",
    "Effect": "Allow",
    "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt",
        "kms:DescribeKey",
        "kms:CreateGrant"
    ],
    "Resource": ["arn:aws:kms:region:account-id:key/key-id"],
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": "account-id",
            "kms:ViaService": "bedrock.region.amazonaws.com"
        }
    }
}
```

## Autorisations pour accéder à votre index GenAI Amazon Kendra
<a name="kb-permissions-kendra"></a>

Si vous avez créé un index GenAI Amazon Kendra pour votre base de connaissances, associez la politique suivante au rôle de service de vos bases de connaissances Amazon Bedrock pour autoriser l’accès à l’index. Dans la politique, remplacez*\$1\$1Partition\$1*, *\$1\$1Region\$1**\$1\$1AccountId\$1*, et *\$1\$1IndexId\$1* par les valeurs de votre index. Pour autoriser l’accès à plusieurs index de bases de données, ajoutez-les à la liste `Resource`. Pour autoriser l'accès à tous les index de votre index Compte AWS, remplacez-le *\$1\$1IndexId\$1* par un caractère générique (\$1).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kendra:Retrieve",
                "kendra:DescribeIndex"
            ],
            "Resource": "arn:aws:kendra:us-east-1:123456789012:index/${IndexId}" 
        }
    ]
}
```

------

## Autorisations d'accès à votre base de données vectorielle dans Amazon OpenSearch Serverless
<a name="kb-permissions-oss"></a>

Si vous avez créé une base de données vectorielle dans OpenSearch Serverless pour votre base de connaissances, associez la politique suivante à votre rôle de service Amazon Bedrock Knowledge Bases pour autoriser l'accès à la collection. Remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et l'ID de compte auxquels appartient la base de données. Entrez l'ID de votre collection Amazon OpenSearch Service dans*\$1\$1CollectionId\$1*. Pour autoriser l’accès à plusieurs collections, ajoutez-les à la liste `Resource`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "aoss:APIAccessAll"
            ],
            "Resource": [
                "arn:aws:aoss:us-east-1:123456789012:collection/${CollectionId}"
            ]
        }
    ]
}
```

------

## Autorisations d'accès à votre base de données vectorielle dans OpenSearch Managed Clusters
<a name="kb-permissions-osm"></a>

Si vous avez créé une base de données vectorielle dans OpenSearch Managed Cluster pour votre base de connaissances, associez la politique suivante à votre rôle de service Amazon Bedrock Knowledge Bases pour autoriser l'accès au domaine. Remplacez *<region>* et *<accountId>* par la région et l'ID de compte auxquels appartient la base de données. Pour autoriser l’accès à plusieurs domaines, ajoutez-les à la liste `Resource`. Pour plus d’informations sur la configuration d’autorisations, consultez [Conditions préalables et autorisations requises pour utiliser les clusters OpenSearch gérés avec les bases de connaissances Amazon BedrockVue d’ensemble de la configuration des autorisations](kb-osm-permissions-prereq.md).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",       
            "Action": [
                "es:ESHttpGet", 
                "es:ESHttpPost", 
                "es:ESHttpPut", 
                "es:ESHttpDelete" 
            ],
            "Resource": [
                "arn:aws:es:us-east-1:123456789012:domain/domainName/indexName"
            ]       
        }, 
        {
            "Effect": "Allow",
            "Action": [
                "es:DescribeDomain" 
            ],
            "Resource": [
                "arn:aws:es:us-east-1:123456789012:domain/domainName"
            ]       
        }
    ]
}
```

------

## Autorisations d’accès à votre cluster de bases de données Amazon Aurora
<a name="kb-permissions-rds"></a>

**Note**  
Le cluster Amazon Aurora doit résider dans le même emplacement Compte AWS que celui dans lequel la base de connaissances a été créée pour Amazon Bedrock.

Si vous avez créé un cluster de bases de données dans Amazon Aurora pour votre base de connaissances, associez la politique suivante au rôle de service de vos bases de connaissances Amazon Bedrock afin d’autoriser l’accès au cluster de base de données (DB) et d’accorder des autorisations de lecture et d’écriture annexes. Remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et l'ID de compte auxquels appartient le cluster de base de données. Entrez l'ID de votre cluster de base de données Amazon Aurora dans*\$1\$1DbClusterId\$1*. Pour autoriser l’accès à plusieurs clusters de bases de données, ajoutez-les à la liste `Resource`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "RdsDescribeStatementID",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBClusters"
            ],
            "Resource": [
                "arn:aws:rds:us-east-1:123456789012:cluster:${DbClusterId}"
            ]
        },
        {
            "Sid": "DataAPIStatementID",
            "Effect": "Allow",
            "Action": [
                "rds-data:BatchExecuteStatement",
                "rds-data:ExecuteStatement"
            ],
            "Resource": [
                "arn:aws:rds:us-east-1:123456789012:cluster:${DbClusterId}"
            ]
        }
    ]
}
```

------

## Autorisations permettant d’accéder à votre base de données vectorielles dans l’analytique Amazon Neptune
<a name="kb-permissions-neptune"></a>

Si vous avez créé un graphique d’analytique Amazon Neptune pour votre base de connaissance, associez la politique suivante au rôle de service de vos bases de connaissances Amazon Bedrock afin d’autoriser l’accès au graphique. Dans la politique, remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et l'ID de compte auxquels appartient la base de données. *\$1\$1GraphId\$1*Remplacez-les par les valeurs de votre base de données de graphes.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "NeptuneAnalyticsAccess",
            "Effect": "Allow",
            "Action": [
                "neptune-graph:GetGraph",
                "neptune-graph:ReadDataViaQuery",
                "neptune-graph:WriteDataViaQuery",
                "neptune-graph:DeleteDataViaQuery"
            ],
            "Resource": [
                "arn:aws:neptune-graph:us-east-1:123456789012:graph/${GraphId}"
            ]
        }
    ]
}
```

------

## Autorisations permettant d’accéder à votre magasin de vecteurs dans Amazon S3 Vectors
<a name="kb-permissions-s3vectors"></a>

Si vous avez choisi d’utiliser Amazon S3 Vectors pour votre base de connaissances, associez la politique suivante au rôle de service de vos bases de connaissances Amazon Bedrock afin d’autoriser l’accès à l’index vectoriel.

Dans la politique, remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et l'ID de compte auxquels appartient l'indice vectoriel. *\$1\$1BucketName\$1*Remplacez-le par le nom de votre compartiment vectoriel S3 et *\$1\$1IndexName\$1* par le nom de votre index vectoriel. Pour plus d’informations sur les vecteurs Amazon S3, consultez [Configuration pour utiliser Amazon S3 Vectors](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-vectors-setting-up.html).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3VectorBucketReadAndWritePermission",
            "Effect": "Allow",
            "Action": [
                "s3vectors:PutVectors",
                "s3vectors:GetVectors",
                "s3vectors:DeleteVectors",
                "s3vectors:QueryVectors",
                "s3vectors:GetIndex"
            ],
            "Resource": "arn:aws:s3vectors:us-east-1:123456789012:bucket/${BucketName}/index/${IndexName}"
        }
    ]
}
```

------

## Autorisations d'accès à une base de données vectorielle configurée avec un AWS Secrets Manager secret
<a name="kb-permissions-secret"></a>

Si votre base de données vectorielle est configurée avec un AWS Secrets Manager secret, associez la politique suivante à votre rôle de service Amazon Bedrock Knowledge Bases pour autoriser votre compte AWS Secrets Manager à accéder à la base de données. Remplacez *\$1\$1Region\$1* et *\$1\$1AccountId\$1* par la région et l'ID de compte auxquels appartient la base de données. Remplacez *\$1\$1SecretId\$1* par l'identifiant de votre secret.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:123456789012:secret:${SecretId}"
            ]
        }
    ]
}
```

------

Si vous avez chiffré votre secret à l'aide d'une AWS KMS clé, associez des autorisations pour déchiffrer la clé au rôle en suivant les étapes décrites dans[Autorisations permettant de déchiffrer un AWS Secrets Manager secret pour le magasin de vecteurs contenant votre base de connaissances](encryption-kb.md#encryption-kb-3p).

## Autorisations permettant AWS de gérer une AWS KMS clé pour le stockage de données transitoires lors de l'ingestion de données
<a name="kb-permissions-kms-ingestion"></a>

Pour autoriser la création d'une AWS KMS clé pour le stockage de données transitoires lors de l'ingestion de votre source de données, associez la politique suivante à votre rôle de service Amazon Bedrock Knowledge Bases. Remplacez le *\$1\$1Region\$1**\$1\$1AccountId\$1*, et *\$1\$1KeyId\$1* par les valeurs appropriées.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:123456789012:key/${KeyId}"
            ]
        }
    ]
}
```

------

## Autorisations AWS permettant de gérer une source de données à partir du AWS compte d'un autre utilisateur.
<a name="kb-permissions-otherds"></a>

Pour autoriser l'accès au AWS compte d'un autre utilisateur, vous devez créer un rôle qui autorise l'accès entre comptes à un compartiment Amazon S3 dans le compte d'un autre utilisateur. Remplacez le *\$1\$1BucketName\$1**\$1\$1BucketOwnerAccountId\$1*, et *\$1\$1BucketNameAndPrefix\$1* par les valeurs appropriées.

**Autorisations requises pour le rôle de base de connaissances**

Le rôle de base de connaissances fourni lors de la création de la base de connaissances `createKnowledgeBase` nécessite les autorisations Amazon S3 suivantes.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ListBucketStatement",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "123456789012"
                }
            }
        },
        {
            "Sid": "S3GetObjectStatement",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "123456789012"
                }
            }
        }
    ]
}
```

------

Si le compartiment Amazon S3 est chiffré à l'aide d'une AWS KMS clé, les éléments suivants doivent également être ajoutés au rôle de base de connaissances. Remplacez le *\$1\$1BucketOwnerAccountId\$1* et *\$1\$1Region\$1* par les valeurs appropriées.

```
{
        "Sid": "KmsDecryptStatement",
        "Effect": "Allow",
        "Action": [
            "kms:Decrypt"
        ],
        "Resource": [
            "arn:aws:kms:${Region}:${BucketOwnerAccountId}:key/${KeyId}"
        ],
        "Condition": {
        "StringEquals": {
            "kms:ViaService": [
                "s3.${Region}.amazonaws.com"
            ]
        }
        }
    }
```

**Autorisations requises pour une stratégie de compartiment Amazon S3 entre comptes**

Le compartiment de l’autre compte nécessite la stratégie de compartiment Amazon S3 suivante. Remplacez le *\$1\$1KbRoleArn\$1**\$1\$1BucketName\$1*, et *\$1\$1BucketNameAndPrefix\$1* par les valeurs appropriées. 

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "ListBucket",
         "Effect": "Allow",
         "Principal": {
            "AWS": "123456789012"
         },
         "Action": [
            "s3:ListBucket"
         ],
         "Resource": [
            "arn:aws:s3:::amzn-s3-demo-bucket"
         ]
      },
      {
         "Sid": "GetObject",
         "Effect": "Allow",
         "Principal": {
            "AWS": "123456789012"
         },
         "Action": [
            "s3:GetObject"
         ],
         "Resource": [
            "arn:aws:s3:::amzn-s3-demo-bucket/*"
         ]
      }
   ]
}
```

------

**Autorisations requises dans le cadre de la politique relative aux AWS KMS clés entre comptes**

Si le compartiment Amazon S3 entre comptes est chiffré à l'aide d'une AWS KMS clé dans ce compte, la politique de la AWS KMS clé nécessite la politique suivante. Remplacez le *\$1\$1KbRoleArn\$1* et *\$1\$1KmsKeyArn\$1* par les valeurs appropriées.

```
{
    "Sid": "Example policy",
    "Effect": "Allow",
    "Principal": {
        "AWS": [
            "${KbRoleArn}"
        ]
    },
    "Action": [
        "kms:Decrypt"
    ],
    "Resource": "${KmsKeyArn}"
}
```