ich durch den Schnellstart ging hier zu finden: https://boto3.readthedocs.io/en/latest/guide/quickstart.htmlbotocore.exceptions.ClientError: InvalidClientTokenId
ich die AWS CLI installiert und konfiguriert es mit meiner gültigen Schlüssel. Ich habe in den ~/.aws/credentials und ~/.aws/config überprüft
An diesem Punkt sollte ich in der Lage sein, mein py-Skript mit python bin/process_sqs_messages.py
an der Eingabeaufforderung ausführen. Das Skript sieht wie folgt aus:
__author__ = 'chris'
import boto3
sqs = boto3.client('sqs')
# List SQS queues
response = sqs.list_queues()
print(response['QueueUrls'])
Ich erhalte die folgende Fehlermeldung:
botocore.exceptions.ClientError: An error occurred (InvalidClientTokenId)
when calling the ListQueues operation: No account found for the given parameters
Voll Stack-Trace:
Traceback (most recent call last):
File "bin/process_sqs_messages.py", line 12, in <module>
response = client.list_queues()
File "/Users/xxxx/.environments/xxxx_env/lib/python3.6/site-packages/botocore/client.py", line 310, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/Users/xxxxx/.environments/xxxxx_env/lib/python3.6/site-packages/botocore/client.py", line 599, in _make_api_call
raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (InvalidClientTokenId) when calling the ListQueues operation: No account found for the given parameters
Meine Vermutung ist, dass ich eine Session-Token bin fehlt, aber Ich bin mir nicht sicher und ob ich wo bin/wie bekomme ich einen? Die Probe erwähnt es überhaupt nicht.
Wenn sich Ihre Anmeldeinformationen in ~/.aws/credentials befinden, müssen Sie sie nicht dem Clientkonstruktor übergeben. – jarmod
Ja, Sie haben Recht. Der Code, den ich hier hinzugefügt habe, ist mein zweiter Versuch, das Skript zu codieren und es zum Laufen zu bringen. Lass es mich bearbeiten, um mein erstes Skript zu reflektieren. – Chris
Wenn Sie temporäre Anmeldeinformationen generiert haben, verfügen Sie über einen Zugriffsschlüssel, einen geheimen Schlüssel und ein Sitzungstoken. Sonst haben Sie nur die ersten zwei. Beispiel für die erste: http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-api.html. – jarmod