Accès par programmation avec des informations d’identification de sécurité AWS
Nous vous recommandons d’utiliser des clés d’accès à court terme si possible pour effectuer des appels par programmation à AWS ou pour utiliser l’AWS Command Line Interface ou l’Outils AWS pour PowerShell. Toutefois, vous pouvez également utiliser des clés d’accès AWS à long terme.
Lorsque vous créez une clé d'accès à long terme, vous générez l'ID de clé d'accès (par exemple, AKIAIOSFODNN7EXAMPLE) et la clé d'accès secrète (par exemple, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY) sous la forme d'un ensemble. La clé d'accès secrète est accessible en téléchargement uniquement au moment de sa création. Si vous ne téléchargez pas votre clé d'accès secrète ou si vous la perdez, vous devrez la recréer.
Dans de nombreux cas, vous n'avez pas besoin de clés d'accès à long terme qui n'expirent jamais (comme lorsque vous créez des clés d'accès pour un utilisateur IAM). Au lieu de cela, vous pouvez créer des rôles IAM et générer des informations d'identification de sécurité temporaires. Les informations d'identification de sécurité temporaires comprennent non seulement un ID de clé d'accès et une clé d'accès secrète, mais également un jeton de sécurité qui indique la date d'expiration des informations d'identification. Après leur expiration, elles ne sont plus valides. Pour plus d’informations, consultez Alternatives aux clés d'accès à long terme
Les ID de clé d'accès commençant par AKIA sont des clés d’accès à long terme pour un utilisateur IAM ou un utilisateur root Compte AWS. Les ID de clé d'accès commençant par ASIA sont des informations d'identification temporaires créées à l'aide d'opérations AWS STS.
Les utilisateurs ont besoin d’un accès programmatique s’ils souhaitent interagir avec AWS en dehors de la AWS Management Console. La manière d’octroyer un accès par programmation dépend du type d’utilisateur qui accède à AWS.
Pour accorder aux utilisateurs un accès programmatique, choisissez l’une des options suivantes.
| Quel utilisateur a besoin d’un accès programmatique ? | Pour | Par |
|---|---|---|
|
Identité de la main-d’œuvre (Utilisateurs gérés dans IAM Identity Center) |
Utilisez des informations d’identification temporaires pour signer des demandes par programmation destinées à la AWS CLI, aux AWS SDK ou aux API AWS. |
Suivez les instructions de l’interface que vous souhaitez utiliser.
|
| IAM | Utilisez des informations d’identification temporaires pour signer des demandes par programmation destinées à la AWS CLI, aux AWS SDK ou aux API AWS. | Suivez les instructions de la section Utilisation d’informations d’identification temporaires avec des ressources AWS dans le Guide de l’utilisateur IAM. |
| IAM | (Non recommandé) Utilisez des informations d’identification à long terme pour signer des demandes par programmation destinées à la AWS CLI, aux AWS SDK ou aux API AWS. |
Suivez les instructions de l’interface que vous souhaitez utiliser.
|
Alternatives aux clés d'accès à long terme
Pour de nombreux cas d'utilisation courants, il existe des alternatives aux clés d'accès à long terme. Pour améliorer la sécurité de votre compte, tenez compte des points suivants.
-
N'intégrez pas de clés d'accès à long terme ni de clés d'accès secrètes dans le code de votre application ou dans un référentiel de code. Utilisez plutôt AWS Secrets Manager ou une autre solution de gestion des secrets afin de ne pas avoir à coder les clés en texte brut. L'application ou le client peut ensuite récupérer des secrets en cas de besoin. Pour plus d'informations, consultez Présentation d’AWS Secrets Manager dans le Guide de l'utilisateur AWS Secrets Manager.
-
Utilisez les rôles IAM pour générer des informations d'identification de sécurité temporaires dans la mesure du possible : utilisez toujours des mécanismes permettant de délivrer des identifiants de sécurité temporaires, lorsque cela est possible, plutôt que des clés d'accès à long terme. Les informations d'identification de sécurité temporaires sont plus sécurisées car elles ne sont pas stockées avec l'utilisateur, mais sont générées automatiquement et fournies à l'utilisateur sur demande. Les informations d'identification de sécurité temporaires ont une durée de vie limitée, ce qui vous évite d'avoir à les gérer ou à les mettre à jour. Les mécanismes qui fournissent des clés d'accès temporaires incluent les rôles IAM ou l'authentification d'un utilisateur d'IAM Identity Center. Pour les machines qui fonctionnent en dehors de AWS vous pouvez utiliser AWS Identity and Access Management Rôles Anywhere.
-
Utilisez des alternatives aux clés d'accès à long terme pour l’AWS Command Line Interface (AWS CLI) ou
aws-shell— Les alternatives incluent ce qui suit.-
AWS CloudShell est un shell préauthentifié, basé sur un navigateur, que vous pouvez lancer directement à partir de AWS Management Console. Vous pouvez exécuter des commandes AWS CLI contre les Services AWS par le biais de votre shell préféré (Bash, PowerShell ou terminal Z). Dans ce cas, il n'est pas nécessaire de télécharger ou d'installer des outils de ligne de commande. Pour plus d’informations, consultez Présentation de AWS CloudShell dans le Guide de l’utilisateur AWS CloudShell.
-
Intégration de AWS CLI version 2 à AWS IAM Identity Center (IAM Identity Center). Vous pouvez authentifier les utilisateurs et fournir des informations d'identification à court terme pour exécuter des commandes AWS CLI. Pour en savoir plus, voir Intégration de AWS CLI à IAM Identity Center dans le Guide de l'utilisateur AWS IAM Identity Center et Configuration d'AWS CLI en vue de l'utilisation d'IAM Identity Center dans le Guide de l'utilisateur AWS Command Line Interface.
-
-
Ne créez pas de clés d'accès à long terme pour les utilisateurs humains qui ont besoin d'accéder à des applications Services AWS. IAM Identity Center peut générer des informations d'accès temporaires pour que vos utilisateurs IdP externes accèdent au Services AWS. Il n'est donc plus nécessaire de créer et de gérer des informations d'identification à long terme dans IAM. Dans IAM Identity Center, créez un ensemble d'autorisations IAM Identity Center qui accorde l'accès aux utilisateurs IdP externes. Attribuez ensuite à un groupe d’IAM Identity Center les autorisations définies dans les Comptes AWS sélectionnés. Pour plus d'informations, consultez la section Présentation d’AWS IAM Identity Center, Se connecter à un fournisseur d'identité externe et Jeux d’autorisations dans le Guide de l'utilisateur AWS IAM Identity Center.
-
Ne stockez pas de clés d'accès à long terme dans un service informatique AWS. Attribuez plutôt un rôle IAM aux ressources de calcul. Cela fournit automatiquement des informations d'identification temporaires pour accorder l'accès. Par exemple, lorsque vous créez un profil d'instance attaché à une instance Amazon EC2, vous pouvez attribuer un rôle AWS à l'instance et le mettre à la disposition de toutes ses applications. Un profil d'instance contient le rôle et permet aux programmes qui s'exécutent sur l'instance Amazon EC2 d'obtenir des informations d'identification temporaires. Pour en savoir plus, consultez Utilisation d'un rôle IAM pour accorder des autorisations à des applications s'exécutant sur des instances Amazon EC2.