

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.

# Identity and Access Management dans S3 Vectors
<a name="s3-vectors-access-management"></a>

La gestion des accès dans S3 Vectors suit les meilleures pratiques en matière de AWS sécurité, en fournissant plusieurs niveaux de contrôle pour garantir que seuls les utilisateurs et les applications autorisés peuvent accéder à vos données vectorielles. Le service s’intègre à IAM et prend en charge les politiques basées sur les identités et les ressources, ce qui vous donne de la flexibilité dans la manière dont vous structurez et gérez les autorisations au sein de votre organisation.

## Authentification et autorisation des demandes
<a name="s3-vectors-authenticating-authorizing"></a>

S3 Vectors utilise des mécanismes d'authentification et d'autorisation AWS standard pour sécuriser l'accès aux compartiments vectoriels et à leur contenu. Chaque demande adressée à S3 Vectors doit être authentifiée à l'aide AWS d'informations d'identification valides, et le service évalue les autorisations en fonction de la combinaison de politiques basées sur l'identité, de politiques basées sur les ressources et de toute politique de contrôle de service applicable.

Le processus d'authentification commence lorsqu'un client adresse une demande à S3 Vectors à l'aide AWS d'informations d'identification (clés d'accès, informations d' AWS STS identification temporaires ou rôles IAM). Le service valide ces informations d’identification, puis évalue les autorisations associées à l’identité authentifiée par rapport à l’action demandée et à la ressource cible. Ce processus d’évaluation prend en compte plusieurs types de politiques et applique le principe du moindre privilège pour déterminer si la demande doit être autorisée ou refusée.

L’autorisation dans S3 Vectors fonctionne à plusieurs niveaux de granularité. Vous pouvez contrôler l’accès au niveau du compartiment de vecteur, au niveau de l’index vectoriel individuel ou même au niveau d’opérations spécifiques au sein d’un index. Ce modèle d’autorisation hiérarchique vous permet de mettre en œuvre des schémas de contrôle d’accès sophistiqués qui correspondent à votre structure organisationnelle et aux exigences de gouvernance des données.

## Types de ressources définis pour les compartiments de vecteur
<a name="s3-vectors-resource-types"></a>

S3 Vectors définit des types de ressources spécifiques qui peuvent être référencés dans les politiques IAM et les politiques basées sur les ressources. Il est essentiel de comprendre ces types de ressources pour créer des politiques de contrôle d’accès efficaces qui fournissent le niveau d’accès approprié aux utilisateurs et aux applications appropriés.

La table suivante décrit les types de ressources disponibles dans S3 Vectors.


**Types de ressources disponibles dans S3 Vectors**  

| Type de ressource | Format ARN | Description | 
| --- | --- | --- | 
| VectorBucket | arn:aws:s3vector : ::bucket/ region 123456789012 bucket-name | Représente un compartiment de vecteur et est utilisé pour les opérations au niveau du compartiment telles que la création, la suppression ou la configuration du compartiment | 
| Index | arn:aws:s3vector : ::bucket/ /index/ region 123456789012 bucket-name index-name | Représente un index vectoriel dans un compartiment et est utilisé pour des opérations spécifiques à un index, telles que l’interrogation de vecteurs ou la gestion du contenu de l’index | 

## Actions de politique pour les compartiments de vecteur
<a name="s3-vectors-policy-actions"></a>

S3 Vectors fournit un ensemble complet d’actions politiques correspondant aux différentes opérations que vous pouvez effectuer sur les compartiments et les index vectoriels. Ces actions sont conçues pour fournir un contrôle précis sur les personnes habilitées à effectuer des opérations spécifiques, vous permettant ainsi de mettre en œuvre efficacement le principe du moindre privilège.

La table suivante répertorie toutes les actions de politique disponibles pour les ressources S3 Vectors.


**Actions de politique pour les ressources S3 Vectors**  

| Type de ressource | opérations d’API | Actions de politique | Description des actions de politique | Niveau d’accès | Clés de condition | 
| --- | --- | --- | --- | --- | --- | 
| Compte | [ListVectorBuckets](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_ListVectorBuckets.html) | vecteurs S3 : ListVectorBuckets | Accorde l’autorisation de répertorier tous les compartiments de vecteur dans le compte et la région | List |  | 
| VectorBucket | [CreateVectorBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_CreateVectorBucket.html) | vecteurs S3 : CreateVectorBucket | Accorde l’autorisation de créer un nouveau compartiment de vecteur avec une configuration spécifiée | Écrire | Vecteurs S3 : SSEType, vecteurs S3 : kmsKeyArn | 
| VectorBucket | [GetVectorBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_GetVectorBucket.html) | vecteurs S3 : GetVectorBucket | Accorde l’autorisation de récupérer les attributs et la configuration du compartiment de vecteur | Lecture |  | 
| VectorBucket | [DeleteVectorBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_DeleteVectorBucket.html) | vecteurs S3 : DeleteVectorBucket | Accorde l’autorisation de supprimer un compartiment de vecteur vide | Écrire |  | 
| VectorBucket | [ListIndexes](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_ListIndexes.html) | vecteurs S3 : ListIndexes | Accorde l’autorisation de répertorier tous les index dans un compartiment de vecteur | List |  | 
| VectorBucket | [PutVectorBucketPolicy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_PutVectorBucketPolicy.html) | vecteurs S3 : PutVectorBucketPolicy | Accorde l’autorisation d’appliquer ou de mettre à jour une politique basée sur les ressources sur un compartiment de vecteur | Gestion des autorisations |  | 
| VectorBucket | [GetVectorBucketPolicy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_GetVectorBucketPolicy.html) | vecteurs S3 : GetVectorBucketPolicy | Accorde l’autorisation de récupérer la politique basée sur les ressources attachée à un compartiment de vecteur | Lecture |  | 
| VectorBucket | [DeleteVectorBucketPolicy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_DeleteVectorBucketPolicy.html) | vecteurs S3 : DeleteVectorBucketPolicy | Accorde l’autorisation de supprimer la politique basée sur les ressources d’un compartiment de vecteur | Gestion des autorisations |  | 
| Index | [CreateIndex](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_CreateIndex.html) | vecteurs S3 : CreateIndex | Accorde l’autorisation de créer un nouvel index vectoriel avec des dimensions et une configuration de métadonnées spécifiées | Écrire |  | 
| Index | [GetIndex](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_GetIndex.html) | vecteurs S3 : GetIndex | Accorde l’autorisation de récupérer les attributs et la configuration de l’index vectoriel | Lecture |  | 
| Index | [DeleteIndex](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_DeleteIndex.html) | vecteurs S3 : DeleteIndex | Accorde l’autorisation de supprimer un index vectoriel et tout son contenu | Écrire |  | 
| Index | [QueryVectors](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_QueryVectors.html) | Vecteurs S3 (obligatoires) : QueryVectors | Accorde l’autorisation d’effectuer des requêtes de similarité par rapport aux vecteurs d’un index.  **Avec `s3vectors:QueryVectors` uniquement**, vous pouvez récupérer les clés vectorielles des voisins les plus proches approximatifs et leurs distances calculées à partir du vecteur de requête. Cette autorisation est suffisante uniquement lorsque vous ne définissez aucun filtre de métadonnées et que vous ne demandez pas de métadonnées (en maintenant le `returnMetadata` paramètre défini sur false ou non spécifié). | Lecture |  | 
|  |  | (Conditionnellement requis) : s3vector : GetVectors | Obligatoire si vous définissez des filtres de métadonnées, définis `returnMetadata` sur true dans votre demande.  **Avec `s3vectors:QueryVectors` et `s3vectors:GetVectors`**, vous pouvez filtrer les résultats en utilisant des critères de métadonnées et récupérer les clés vectorielles ainsi que leurs données associées, les métadonnées et les distances calculées par rapport au vecteur de requête. | Lecture |  | 
| Index | [PutVectors](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_PutVectors.html) | vecteurs S3 : PutVectors | Accorde l’autorisation d’ajouter ou de mettre à jour des vecteurs dans un index | Écrire |  | 
| Index | [GetVectors](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_GetVectors.html) | vecteurs S3 : GetVectors | Accorde l’autorisation de récupérer des vecteurs spécifiques et de leurs métadonnées par clé vectorielle | Lecture |  | 
| Index | [ListVectors](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_ListVectors.html) | Vecteurs S3 (obligatoires) : ListVectors | Accorde l’autorisation de répertorier les clés vectorielles dans un index.  **Avec `s3vectors:ListVectors` uniquement**, vous pouvez répertorier les clés vectorielles lorsque les paramètres `returnData` et deux `returnMetadata` sont définis sur false ou non spécifiés. | Lecture |  | 
|  |  | (Conditionnellement requis) : s3vector : GetVectors | Obligatoire si vous définissez le paramètre `returnData` ou `returnMetadata` sur true dans votre demande.  **Avec `s3vectors:ListVectors` et `s3vectors:GetVectors`**, vous pouvez récupérer les clés vectorielles ainsi que leurs données et métadonnées associées en définissant `returnData` et `returnMetadata` sur true. | Lecture |  | 
| Index | [DeleteVectors](https://docs.aws.amazon.com/AmazonS3/latest/API/API_S3VectorBuckets_DeleteVectors.html) | vecteurs S3 : DeleteVectors | Accorde l’autorisation de supprimer des vecteurs spécifiques d’un index | Écrire |  | 

Ces actions peuvent être combinées de différentes manières pour créer des politiques qui répondent à vos besoins d’accès spécifiques. Par exemple, vous pouvez créer une politique en lecture seule qui inclut des actions `s3vectors:GetVectorBucket`, `s3vectors:ListIndexes`, `s3vectors:QueryVectors` et `s3vectors:GetVectors` ou une politique qui inclut des autorisations de requête et de récupération vectorielle mais exclut les actions administratives telles que la création ou la suppression d’index.

## Clés de condition pour compartiments de vecteur
<a name="s3-vectors-condition-keys"></a>


**Clés de condition pour compartiments de vecteur**  

|  | Clés de condition | Description | Type | 
| --- | --- | --- | --- | 
| 1 | s3vectors:sseType | Filtre l’accès en fonction du type de chiffrement côté serveur Valeurs valides : AES256 \$1 aws:kms | String | 
| 2 | vecteurs S3 : kmsKeyArn | Filtre l'accès par la AWS AWS KMS clé ARN pour la clé utilisée pour chiffrer un bucket vectoriel | ARN | 

# Exemples de politiques basées sur l’identité S3 Vectors
<a name="s3-vectors-iam-policies"></a>

Les politiques basées sur l’identité IAM sont des documents JSON que vous attachez aux utilisateurs, groupes ou rôles IAM pour définir les actions qu’ils peuvent exécuter sur les ressources S3 Vectors. Ces politiques sont évaluées dans le contexte de l'identité à l'origine de la demande et fournissent un moyen centralisé de gérer les autorisations dans votre AWS environnement. Les politiques basées sur l’identité fournissent une piste d’audit claire permettant de déterminer qui dispose de quelles autorisations et peuvent être facilement modifiées en fonction de l’évolution de vos exigences d’accès.

Lorsque vous concevez des politiques basées sur l’identité pour S3 Vectors, tenez compte des différents types d’utilisateurs et d’applications qui interagiront avec vos données vectorielles. Les modèles courants incluent les scientifiques des données qui ont besoin d’interroger des vecteurs, les ingénieurs de données qui ont besoin de charger et de gérer des données vectorielles, les administrateurs qui ont besoin d’un contrôle total sur la configuration des compartiments et les applications qui ont besoin d’un accès spécifique en lecture ou en écriture à des index vectoriels spécifiques.

## Exemples de politiques
<a name="s3-vectors-iam-policies-examples"></a>

### Stratégie d’accès administratif
<a name="s3-vectors-iam-policies-admin"></a>

Cette politique fournit un accès administratif complet aux ressources S3 Vectors, adaptées aux administrateurs de plateformes ou aux DevOps équipes :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAdministrativeAccess",
            "Effect": "Allow",
            "Action": [
                "s3vectors:CreateVectorBucket",
                "s3vectors:PutVectorBucketPolicy",
                "s3vectors:DeleteVectorBucket",
                "s3vectors:DeleteVectorBucketPolicy",
                "s3vectors:GetVectorBucket",
                "s3vectors:GetVectorBucketPolicy",
                "s3vectors:ListVectorBuckets",
                "s3vectors:CreateIndex",
                "s3vectors:DeleteIndex",
                "s3vectors:GetIndex",
                "s3vectors:ListIndexes",
                "s3vectors:DeleteVectors",
                "s3vectors:GetVectors",
                "s3vectors:ListVectors",
                "s3vectors:PutVectors",
                "s3vectors:QueryVectors"
            ],
            "Resource": "*"
        }
    ]
}
```

### Stratégie d’accès spécifique à l’application
<a name="s3-vectors-iam-policies-app"></a>

Cette stratégie est conçue pour les applications qui doivent effectuer des opérations spécifiques sur des index vectoriels désignés :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowApplicationVectorAccess",
            "Effect": "Allow",
            "Action": [
                "s3vectors:QueryVectors",
                "s3vectors:GetVectors",
                "s3vectors:PutVectors",
                "s3vectors:ListVectors"
            ],
            "Resource": [
                "arn:aws:s3vectors:aws-region:123456789012:bucket/amzn-s3-demo-vector-bucket/index/product-recommendations",
                "arn:aws:s3vectors:aws-region:123456789012:bucket/amzn-s3-demo-vector-bucket/index/content-similarity"
            ]
        },
        {
            "Sid": "AllowGetIndex",
            "Effect": "Allow",
            "Action": "s3vectors:GetIndex",
            "Resource": "arn:aws:s3vectors:aws-region:123456789012:bucket/amzn-s3-demo-vector-bucket/index/*"
        },
        {
            "Sid": "AllowIndexInspection",
            "Effect": "Allow",
            "Action": "s3vectors:ListIndexes",
            "Resource": "arn:aws:s3vectors:aws-region:123456789012:bucket/amzn-s3-demo-vector-bucket"
        }  
    ]
}
```

# Exemples de stratégies basées sur les ressources de S3 Vectors
<a name="s3-vectors-resource-based-policies"></a>

Les politiques basées sur les ressources sont attachées à une ressource. Vous pouvez créer des politiques basées sur les ressources pour les compartiments de vecteur. Les politiques basées sur les ressources pour les vecteurs S3 utilisent le format de AWS politique standard en JSON que vous attachez directement aux compartiments vectoriels pour contrôler l'accès au compartiment et à son contenu. 

Contrairement aux politiques basées sur l'identité associées aux utilisateurs, aux groupes ou aux rôles, les politiques basées sur les ressources sont associées à la ressource elle-même (le compartiment vectoriel) et peuvent accorder des autorisations aux principaux depuis d'autres comptes. AWS Elles sont donc idéales pour les scénarios dans lesquels vous devez partager des données vectorielles au-delà des limites de l’organisation ou mettre en œuvre des contrôles d’accès précis en fonction de la ressource spécifique à laquelle vous accédez.

Les politiques basées sur les ressources sont évaluées en combinaison avec les politiques basées sur l’identité, et les autorisations effectives sont déterminées par l’union de toutes les politiques applicables. Cela signifie qu’un principal doit obtenir l’autorisation de la part de la politique basée sur l’identité (attachée à son utilisateur/rôle) et de la politique basée sur les ressources (attachée au compartiment) pour effectuer une action, sauf si la politique basée sur les ressources accorde explicitement l’autorisation.

## Exemple 1 : stratégie d’accès intercompte
<a name="s3-vectors-resource-based-policies-example1"></a>

Cette stratégie explique comment accorder des autorisations spécifiques aux utilisateurs de différents comptes AWS  :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CrossAccountBucketAccess",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam:123456789012:role/Admin"
            },
            "Action": [
                "s3vectors:CreateIndex",
                "s3vectors:ListIndexes",
                "s3vectors:QueryVectors",
                "s3vectors:PutVectors",
                "s3vectors:DeleteIndex"
            ],
            "Resource": [
                "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*",
                "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket"
            ]
        }
    ]
}
```

## Exemple 2 : refus des actions au niveau de l’index vectoriel
<a name="s3-vectors-resource-based-policies-example2"></a>

Cette politique explique comment refuser des actions spécifiques au niveau de l’index vectoriel à un rôle IAM :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyIndexLevelActions",
            "Effect": "Deny",
            "Principal": {
                "AWS": "arn:aws:iam:123456789012:role/External-Role-Name"
            },
            "Action": [
                "s3vectors:QueryVectors",
                "s3vectors:PutVectors",
                "s3vectors:DeleteIndex",
                "s3vectors:GetVectors",
                "s3vectors:GetIndex",
                "s3vectors:DeleteVectors",
                "s3vectors:CreateIndex",
                "s3vectors:ListVectors"
            ],
            "Resource": "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*"
        }
    ]
}
```

## Exemple 3 : refus des opérations de modification à la fois au niveau de l’index vectoriel et au niveau du compartiment
<a name="s3-vectors-resource-based-policies-example3"></a>

Cette politique explique comment refuser les demandes de modification pour les actions d’index vectoriel et de niveau compartiment en spécifiant plusieurs ressources :

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyModificationActionsAtBucketandIndexLevels",
            "Effect": "Deny",
            "Principal": {
                "AWS": "arn:aws:iam:123456789012:role/External-Role-Name"
            },
            "Action": [
                "s3vectors:CreateVectorBucket",
                "s3vectors:DeleteVectorBucket",
                "s3vectors:PutVectorBucketPolicy",
                "s3vectors:DeleteVectorBucketPolicy",                
                "s3vectors:CreateIndex",
                "s3vectors:DeleteIndex",
                "s3vectors:PutVectors",
                "s3vectors:DeleteVectors"
            ],
            "Resource": [
                "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket/*",
                "arn:aws:s3vectors:aws-region:111122223333:bucket/amzn-s3-demo-vector-bucket"
            ]
        }
    ]
}
```