L'ID de clé d'accès AWS n'existe pas dans nos enregistrements
J'ai créé une nouvelle Clé d'Accès et configuré dans l'AWS CLI avec aws configure
. Il a créé le .ini
fichier dans ~/.aws/config
. Quand je lance aws s3 ls
il donne:
Une erreur du client (InvalidAccessKeyId) s'est produite lors de l'appel de la ListBuckets opération: AWS Id de Clé d'Accès que vous avez fourni n'existe pas dans nos dossiers.
AmazonS3FullAccess
politique est également attaché à l'utilisateur. Comment résoudre ce problème?
source d'informationauteur kaushikdr
Vous devez vous connecter pour publier un commentaire.
Il peut arriver que vous avez les anciennes clés exportés via des variables d'environnement (bash_profile) et puisque les variables d'environnement sont prioritaires sur fichiers d'informations d'identification c'est de donner le message d'erreur "la clé d'accès à l'id n'existe pas".
Supprimer les anciennes clés de la bash_profile et vous serez bon d'aller.
S'est passé avec moi une fois de plus tôt, lorsque j'oublié, j'ai des informations d'identification dans bash_profile et m'a donné mal à la tête depuis quelques temps 🙂
Il ressemble à certaines valeurs ont été déjà défini pour les variables d'environnement AWS_ACCESS_KEY_ID et AWS_SECRET_ACCESS_KEY.
Si c'est comme ça, on peut voir certaines de ses valeurs lors de l'exécution des commandes ci-dessous.
Vous avez besoin de réinitialiser ces variables, si vous utilisez aws configurer
Pour réinitialiser, exécuter les commandes ci-dessous.
Pour moi, je comptais sur
IAM EC2 roles
pour donner accès à nos machines à des ressources spécifiques.Je ne savais même pas que il y avait un
credentials
fichier à~/.aws/credentials
jusqu'à ce que j'ai fait tourner/supprimé certains de nos les touches d'accès à la console IAM pour renforcer notre sécurité, et que, soudain, l'un des scripts d'arrêter de travailler sur une seule machine.La suppression des
credentials
fichier fixe pour moi.Ressemble
~/.aws/credentials
n'a pas été créé. Essayez de créer manuellement avec ce contenu:(sur ma machine de test, si je lance
aws
commande sans avoir les informations d'identification de fichier, l'erreur estUnable to locate credentials. You can configure credentials by running "aws configure".
)Pouvez-vous essayer de lancer ces deux commandes à partir de la même coque que vous essayez d'exécuter
aws
:et puis essayez
aws
commande.une autre chose qui peut causer ce, même si tout est correctement configuré, est en cours d'exécution de la commande à partir d'un Makefile. par exemple, j'avais une règle:
quand j'ai couru
make awssetup
j'ai obtenu l'erreur:fatal error: An error occurred (InvalidAccessKeyId) when calling the ListObjects operation: The AWS Access Key Id you provided does not exist in our records.
. mais en cours d'exécution à partir de la ligne de commande a fonctionné.vous pouvez configurer des profils dans le fichier bash_profile à l'aide de
si vous utilisez plusieurs profils. ensuite, utilisez:
Aucun des haut-voté réponses de travail pour moi. Enfin je passe les informations d'identification à l'intérieur du script python, en utilisant l'API du client.
Veuillez noter que le aws_session_token argument est facultatif. Non recommandé pour les travaux publics, mais de rendre la vie plus facile pour un simple essai.
Je tente étapes ci-dessous et il a travaillé:
1. cd ~
2. cd .aws
3. vi informations d'identification
4. supprimer
aws_access_key_id =
aws_secret_access_key =
en plaçant le curseur sur cette ligne et en appuyant sur dd (vi commande pour supprimer la ligne).
Supprimer à la fois la ligne et de vérifier gain.