Demandes - Amazon Simple Storage Service

Demandes

Amazon S3 est un service REST. Vous pouvez envoyer des demandes à Amazon S3 en utilisant l'API REST ou les bibliothèques d'enveloppe du kit SDK AWS (consultez Exemples de code et de bibliothèques) qui enveloppent l'API REST Amazon S3 sous-jacente et simplifient ainsi vos tâches de programmation.

Chaque interaction avec Amazon S3 est authentifiée ou anonyme. L'authentification est un processus de vérification de l'identité du demandeur essayant d'accéder à un produit Amazon Web Services (AWS). Les demandes authentifiées doivent inclure une valeur de signature qui authentifie l'expéditeur de la demande. La valeur de signature est en partie générée à partir des clés d'accès AWS du demandeur (ID de clé d'accès et clé Secret Access Key). Pour plus d'informations sur l'obtention des clés d'accès, consultez Comment puis-je obtenir les informations d'identification de sécurité ? dans le AWS General Reference.

Si vous utilisez le kit AWS SDK, les bibliothèques calculent la signature à partir des clés que vous fournissez. Cependant, si vous faites des appels directs d'API REST dans votre application, vous devez écrire le code pour calculer la signature et l'ajouter à la demande.

À propos des clés d'accès

Les sections suivantes examinent les types de clés d'accès que vous pouvez utiliser pour effectuer des demandes authentifiées.

Clés d'accès au compte AWS

Les clés d'accès au compte fournissent un accès complet aux ressources AWS détenues par le compte. Voici quelques exemples de clés d'accès :

  • ID de clé d'accès (chaîne alphanumérique de 20 caractères). Par exemple: AKIAIOSFODNN7EXAMPLE

  • Clé Secret Access Key (chaîne de 40 caractères). Par exemple: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

L'ID de clé d'accès identifie de manière unique un compte AWS. Vous pouvez utiliser ces clés d'accès pour envoyer des demandes authentifiées à Amazon S3.

Clés d'accès utilisateur IAM

Vous pouvez créer un compte AWS pour votre société. Cependant, plusieurs employés de l'organisation peuvent avoir besoin d'accéder aux ressources AWS de votre organisation. Le partage de vos clés d'accès de compte AWS affaiblit la sécurité et la création de comptes AWS individuels pour chaque employé peut ne pas être pratique. De plus, vous ne pouvez pas facilement partager des ressources comme les compartiments et les objets car elles appartiennent à différents comptes. Pour partager des ressources, vous devez accorder des autorisations, ce qui représente du travail en plus.

Dans de tels scénarios, vous pouvez utiliser AWS Identity and Access Management (IAM) pour créer des utilisateurs sous votre compte AWS avec leurs propres clés d'accès et attacher des stratégies utilisateur IAM qui leur accordent des autorisations d'accès aux ressources appropriées. Pour mieux gérer ces utilisateurs, IAM vous permet de créer des groupes d'utilisateurs et d'accorder des autorisations au niveau du groupe qui s'appliquent à tous les utilisateurs dans ce groupe.

Ces utilisateurs sont désignés comme les utilisateurs IAM que vous créez et gérez au sein d'AWS. Le compte parent contrôle la possibilité de l'utilisateur à accéder à AWS. Toute ressource qu'un utilisateur IAM crée est sous le contrôle du compte AWS parent et payée par ce dernier. Ces utilisateurs IAM peuvent envoyer des demandes authentifiées à Amazon S3 en utilisant leurs propres informations d'identification de sécurité. Pour plus d'informations sur la création et la gestion des utilisateurs sous votre compte AWS, accédez à la page détaillée du produit AWS Identity and Access Management.

Informations d'identification de sécurité temporaires

En plus de créer des utilisateurs IAM avec leurs propres clés d'accès, IAM vous permet d'octroyer des informations d'identification de sécurité temporaires (clés d'accès temporaires et un jeton de sécurité) à n'importe quel utilisateur IAM pour lui permettre d'accéder à vos services et ressources AWS. Vous pouvez aussi gérer des utilisateurs dans votre système en dehors d'AWS. Ces dernières sont appelées utilisateurs fédérés. De plus, les utilisateurs peuvent être des applications que vous créez pour accéder à vos ressources AWS.

IAM fournit l'API AWS Security Token Service pour pouvoir demander des informations d'identification de sécurité temporaires. Vous pouvez utiliser l'API AWS STS ou le kit AWS SDK pour demander ces informations d'identification. L'API retourne des informations d'identification de sécurité temporaires (ID de clé d'accès et clé Secret Access Key), ainsi qu'un jeton de sécurité. Ces informations d'identification sont uniquement valides pour la durée que vous spécifiez lorsque vous les demandez. Vous utilisez l'ID de clé d'accès et la clé secrète de la même façon que vous les utilisez lorsque vous envoyez des demandes en utilisant votre compte AWS ou les clés d'accès utilisateur IAM. De plus, vous devez inclure le jeton dans chaque demande que vous envoyez à Amazon S3.

Un utilisateur IAM peut demander ces informations d'identification de sécurité temporaires pour leur propre utilisation ou pour les passer à des utilisateurs fédérés ou à des applications. Lors d'une demande d'informations d'identification de sécurité temporaires pour des utilisateurs fédérés, vous devez fournir un nom utilisateur et une stratégie IAM qui définit les autorisations que vous souhaitez associer à ces informations. L'utilisateur fédéré ne peut pas obtenir plus d'autorisations que l'utilisateur IAM parent qui a demandé les informations d'identification temporaires.

Vous pouvez utiliser ces informations d'identification de sécurité temporaires pour effectuer des demandes à Amazon S3. Les bibliothèques d'API calculent la valeur de signature nécessaire en utilisant ces informations d'identification pour authentifier votre demande. Si vous envoyez des demandes en utilisant des informations d'identification expirées, Amazon S3 refuse la demande.

Pour plus d'informations sur la signature de demandes en utilisant des informations d'identification de sécurité temporaires dans vos demandes d'API REST, consultez Signature et authentification des demandes REST. Pour des informations sur l'envoi de demandes en utilisant des kits SDK AWS, consultez Demandes à l'aide des kits SDK AWS.

Pour en savoir plus sur le support IAM pour les informations d'identification de sécurité temporaires, consultez Informations d'identification de sécurité temporaires dans le IAM Guide de l'utilisateur.

Pour plus de sécurité, vous pouvez demander une Multi-Factor Authentication (MFA) lors de l'accès à vos ressources Amazon S3 en configurant une stratégie de compartiment. Pour plus d'informations, consultez Ajout d'une stratégie de compartiment pour exiger une authentification MFA. Après avoir demandé une authentification MFA pour accéder à vos ressources Amazon S3, la seule façon d'accéder à ces ressources est de fournir des informations d'identification temporaires créées avec une clé MFA. Pour de plus amples informations, veuillez consulter la page détaillée AWS Multi-Factor Authentication et Configuration de l'accès API protégé par MFA dans le IAM Guide de l'utilisateur.

Points de terminaison de demande

Vous envoyez des demandes REST au point de terminaison prédéfini du service. Pour une liste de tous les services AWS et leurs points de terminaison correspondants, consultez Régions et points de terminaison dans le guide AWS General Reference.