Einstellungen der Konfigurations- und Anmeldeinformationsdatei - AWS Command Line Interface

Einstellungen der Konfigurations- und Anmeldeinformationsdatei

Sie können Ihre häufig verwendeten Konfigurationseinstellungen und Anmeldeinformationen in Dateien speichern, die von der AWS CLI verwaltet werden.

Die Dateien sind in profiles unterteilt. Standardmäßig verwendet die AWS CLI die Einstellungen aus dem Profil mit dem Namen default. Wenn Sie alternative Einstellungen verwenden möchten, können Sie zusätzliche Profile erstellen und referenzieren. Weitere Informationen zu benannten Profilen finden Sie unter Benannte Profile für die AWS CLI.

Sie können eine einzelne Einstellung überschreiben, indem Sie entweder eine der unterstützten Umgebungsvariablen definieren oder einen Befehlszeilenparameter verwenden. Weitere Informationen zum Vorrang der Konfigurationseinstellungen finden Sie unter Konfigurationseinstellungen und Vorrang.

Wo werden Konfigurationseinstellungen gespeichert?

Die AWS CLI speichert vertrauliche Anmeldeinformationen, die Sie mit aws configure angeben, in einer lokalen Datei namens credentials in einem Ordner namens .aws in Ihrem Stammverzeichnis. Die weniger vertraulichen Konfigurationsoptionen, die Sie mit aws configure angeben, werden in einer lokalen Datei namens config gespeichert, die sich ebenfalls im Ordner .aws Ihres Stammverzeichnisses befindet.

Speichern von Anmeldeinformationen in der Konfigurationsdatei

Sie können alle Profileinstellungen in einer einzigen Datei speichern, da die AWS CLI Anmeldeinformationen aus der Datei config lesen kann. Wenn in beiden Dateien Anmeldeinformationen für ein Profil mit demselben Namen vorhanden sind, haben die Schlüssel in der Anmeldeinformationsdatei Vorrang.

Diese Dateien werden auch von den Software Development Kits (SDKs) für verschiedene Sprachen verwendet. Wenn Sie zusätzlich zur AWS CLI eines der SDKs verwenden, bestätigen Sie, ob die Anmeldeinformationen in einer eigenen Datei gespeichert werden sollen.

Der Speicherort Ihres Stammverzeichnis hängt vom Betriebssystem ab. Die folgenden Umgebungsvariablen verweisen auf dieses: %UserProfile% in Windows und $HOME oder ~ (Tilde) in Unix-basierten Systemen. Sie können auch einen Nicht-Standard-Speicherort für die Dateien angeben, indem Sie die Umgebungsvariablen AWS_CONFIG_FILE und AWS_SHARED_CREDENTIALS_FILE auf einen anderen lokalen Pfad festlegen. Details dazu finden Sie unter Umgebungsvariablen zum Konfigurieren der AWS CLI.

Beispielsweise ähneln die von der AWS CLI generierten Dateien für ein Standardprofil, das mit aws configure konfiguriert ist, den folgenden.

~/.aws/credentials

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

~/.aws/config

[default] region=us-west-2 output=json

Dateibeispiele mit mehreren benannten Profilen finden Sie unter Benannte Profile für die AWS CLI.

Wenn Sie ein freigegebenes Profil verwenden, das eine AWS Identity and Access Management (IAM)-Rolle angibt, ruft die AWS STS die AWS CLI-Operation AssumeRole auf, um temporäre Anmeldeinformationen abzurufen. Diese Anmeldeinformationen werden dann (in ~/.aws/cli/cache) gespeichert. Nachfolgende AWS CLI-Befehle verwenden die zwischengespeicherten temporären Anmeldeinformationen, bis sie ablaufen. Dann aktualisiert die AWS CLI automatisch die Anmeldeinformationen.

Festlegen und Anzeigen von Konfigurationseinstellungen

Es gibt mehrere Möglichkeiten, Ihre Konfigurationseinstellungen in den Dateien anzuzeigen und festzulegen.

Datei Credentials und config

Sie können Ihre Einstellungen anzeigen und bearbeiten, indem Sie die Dateien credentials und config direkt in einem Texteditor bearbeiten. Weitere Informationen finden Sie unter Wo werden Konfigurationseinstellungen gespeichert?

Um eine Einstellung zu entfernen, löschen Sie die entsprechende Einstellung in Ihren credentials- und config-Dateien.

aws configure

Führen Sie diesen Befehl aus, um Ihre Anmeldeinformationen, Ihre Region und das Ausgabeformat schnell festzulegen und anzuzeigen. Das folgende Beispiel zeigt Beispielwerte.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

Weitere Informationen finden Sie unter Schnellkonfiguration mit aws configure

aws configure set

Sie können alle Anmeldeinformationen oder Konfigurationseinstellungen mit aws configure set festlegen. Geben Sie das Profil an, das Sie mit der --profile-Einstellung anzeigen oder ändern möchten.

Mit dem folgenden Befehl beispielsweise wird die region in dem Profil mit dem Namen integ festgelegt.

$ aws configure set region us-west-2 --profile integ

Um eine Einstellung zu entfernen, verwenden Sie eine leere Zeichenfolge als Wert, oder löschen Sie die Einstellung in den credentials- und config-Dateien manuell in einem Texteditor.

$ aws configure set cli_pager "" --profile integ
aws configure get

Sie können alle Anmeldeinformationen oder Konfigurationseinstellungen abrufen, die Sie mit aws configure get festgelegt haben. Geben Sie das Profil an, das Sie mit der --profile-Einstellung anzeigen oder ändern möchten.

Beispielsweise wird mit dem folgenden Befehl dieregion-Einstellung in dem Profil mit dem Namen integ abgerufen.

$ aws configure get region --profile integ us-west-2

Wenn die Ausgabe leer ist, ist die Einstellung nicht explizit festgelegt und es wird der Standardwert verwendet.

aws configure import

Importieren von CSV-Anmeldeinformationen, die von der AWS-Webkonsole generiert wurden. Eine CSV-Datei wird importiert, wobei der Profilname mit dem IAM-Benutzernamen übereinstimmt. Die CSV-Datei muss die folgenden Header enthalten.

  • Benutzername

  • Zugriffsschlüssel-ID

  • Geheimer Zugriffsschlüssel

Anmerkung

Während der ersten Erstellung des Schlüsselpaares können Sie nach dem Schließen des Dialogfelds Download .csv file (CSV-Datei herunterladen) nicht mehr auf Ihren geheimen Zugriffsschlüssel zugreifen. Wenn Sie eine .csv-Datei benötigen, müssen Sie selbst eine mit den erforderlichen Headern und Ihren gespeicherten Schlüsselpaarinformationen erstellen. Wenn Sie keinen Zugriff auf Ihre Schlüsselpaar-Informationen haben, müssen Sie ein neues Schlüsselpaar erstellen.

$ aws configure import --csv file://credentials.csv

Weitere Informationen zu Schlüsselpaaren finden Sie unter Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel.

aws configure list

Um alle Konfigurationsdaten aufzulisten, verwenden Sie den Befehl aws configure list. Dieser Befehl zeigt den AWS CLI-Namen aller Einstellungen, die Sie konfiguriert haben, ihre Werte, und von wo aus die Konfiguration abgerufen wurde.

$ aws configure list Name Value Type Location ---- ----- ---- -------- profile <not set> None None access_key ****************ABCD shared-credentials-file secret_key ****************ABCD shared-credentials-file region us-west-2 env AWS_DEFAULT_REGION
aws configure list-profiles

Um alle Profilnamen aufzulisten, verwenden Sie den Befehl aws configure list-profiles.

$ aws configure list-profiles default test

Unterstützte Einstellungen in der config-Datei

Die folgenden Einstellungen werden in der config-Datei unterstützt. Es werden die Werte in dem angegebenen Profil (oder dem Standardprofil) verwendet, es sei denn, sie werden durch eine gleichnamige Umgebungsvariable oder eine gleichnamige Befehlszeilenoption überschrieben. Weitere Informationen darüber, welche Rangfolgeeinstellungen Vorrang haben, finden Sie unter Konfigurationseinstellungen und Vorrang

Globale Einstellungen

aws_access_key_id

Gibt den AWS-Zugriffsschlüssel an, der als Teil der Anmeldeinformationen zur Authentifizierung der Befehlsanforderung verwendet wird. Zwar kann dieses in der config-Datei gespeichert werden, wir empfehlen Ihnen jedoch, es in der credentials-Datei zu speichern.

Kann von der Umgebungsvariablen AWS_ACCESS_KEY_ID überschrieben werden. Es ist nicht möglich, die Zugriffsschlüssel-ID als Befehlszeilenoption anzugeben.

aws_access_key_id = AKIAIOSFODNN7EXAMPLE

Weitere Informationen zu Schlüsselpaaren finden Sie unter Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel.

aws_secret_access_key

Gibt den geheimen AWS-Schlüssel an, der als Teil der Anmeldeinformationen zur Authentifizierung der Befehlsanforderung verwendet wird. Zwar kann dieses in der config-Datei gespeichert werden, wir empfehlen Ihnen jedoch, es in der credentials-Datei zu speichern.

Kann von der Umgebungsvariablen AWS_SECRET_ACCESS_KEY überschrieben werden. Es ist nicht möglich, den geheimen Zugriffsschlüssel als Befehlszeilenoption anzugeben.

aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Weitere Informationen zu Schlüsselpaaren finden Sie unter Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel.

aws_session_token

Gibt ein AWS-Sitzungs-Token an. Ein Sitzungs-Token ist nur erforderlich, wenn Sie manuell temporäre Anmeldeinformationen angeben. Zwar kann dieses in der config-Datei gespeichert werden, wir empfehlen Ihnen jedoch, es in der credentials-Datei zu speichern.

Kann von der Umgebungsvariablen AWS_SESSION_TOKEN überschrieben werden. Es ist nicht möglich, das Sitzungs-Token als Befehlszeilenoption anzugeben.

aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
ca_bundle

Gibt eine CA-Zertifikat-Bundle (eine Datei mit der Erweiterung .pem) an, die zur Überprüfung von SSL-Zertifikaten verwendet wird.

Kann von der Umgebungsvariablen AWS_CA_BUNDLE oder mit der Befehlszeilenoption --ca-bundle überschrieben werden.

ca_bundle = dev/apps/ca-certs/cabundle-2019mar05.pem
cli_auto_prompt

Aktiviert die automatische Eingabeaufforderung für AWS CLI Version 2. Es gibt zwei Einstellungen, die verwendet werden können:

  • on verwendet den vollständigen automatischen Prompt-Modus jedes Mal, wenn Sie versuchen, einen aws-Befehl auszuführen. Dazu gehört das Drücken der EINGABETASTE sowohl nach einem vollständigen Befehl als auch nach einem unvollständigen Befehl.

    cli_auto_prompt = on
  • on-partial verwendet den partiellen automatischen Prompt-Modus. Wenn ein Befehl unvollständig ist oder aufgrund clientseitiger Validierungsfehler nicht ausgeführt werden kann, wird die automatische Eingabeaufforderung verwendet. Dieser Modus ist besonders nützlich, wenn Sie über bereits vorhandene Skripts oder Runbooks verfügen oder nur für Befehle, mit denen Sie nicht vertraut sind, automatisch aufgefordert werden möchten, anstatt bei jedem Befehl gefragt zu werden.

    cli_auto_prompt = on-partial

Sie können diese aws_cli_auto_prompt-Umgebungsvariable mithilfe des --cli-auto-prompt- und --no-cli-auto-prompt-Befehlszeilenparameters überschreiben.

Weitere Informationen zur Auto-Prompt-Funktion von AWS CLI Version 2 finden Sie unter Aufforderung der AWS CLI zur Eingabe von Befehlen.

cli_binary_format

Gibt an, wie die AWS CLI Version 2 binäre Eingabeparameter interpretiert. Dabei kann es sich um einen der folgenden Werte handeln:

  • base64 – Dies ist der Standardwert. Ein Eingabeparameter, der als BLOB (Binary Large Object) eingegeben wird, akzeptiert eine base64-kodierte Zeichenfolge. Um echten binären Inhalt zu übergeben, legen Sie den Inhalt in eine Datei und geben den Pfad und den Namen der Datei mit dem Präfix fileb:// als Wert des Parameters an. Um in einer Datei enthaltenen base64-kodierten Text zu übergeben, geben Sie den Pfad und den Namen der Datei mit dem Präfix file:// als Wert des Parameters an.

  • raw-in-base64-out – Standardeinstellung für die AWS CLI Version 1. Wenn der Wert der Einstellung raw-in-base64-out lautet, werden Dateien, auf die mit dem Präfix file:// verwiesen wird, als Text gelesen und dann versucht die AWS CLI, sie in Binärform zu codieren.

Dieser Eintrag verfügt über keine entsprechende Umgebungsvariable. Sie können den Wert in einem einzelnen Befehl mit dem Parameter --cli-binary-format raw-in-base64-out angeben.

cli_binary_format = raw-in-base64-out

Wenn Sie einen Binärwert in einer Datei mit der Präfixnotation fileb:// referenzieren, erwartet die AWS CLI immer, dass die Datei unformatierten binären Inhalt enthält, und versucht nicht, den Wert zu konvertieren.

Wenn Sie einen binären Wert in einer Datei mithilfe der Präfixnotation file:// referenzieren, behandelt die AWS CLI die Datei entsprechend der aktuellen cli_binary_format-Einstellung. Wenn der Wert dieser Einstellung base64 lautet (der Standardwert, wenn nicht explizit festgelegt), erwartet die AWS CLI, dass die Datei base64-kodierten Text enthält. Wenn der Wert dieser Einstellung raw-in-base64-out lautet, erwartet die AWS CLI, dass die Datei unformatierten binären Inhalt enthält.

cli_history

Standardmäßig deaktiviert. Diese Einstellung aktiviert den Befehlsverlauf für die AWS CLI. Nachdem Sie diese Einstellung aktiviert haben, zeichnet AWS CLI den Verlauf von aws-Befehlen auf.

cli_history = enabled

Sie können Ihren Verlauf mit dem Befehl aws history list auflisten und die resultierenden command_ids im Befehl aws history show verwenden, um Details abzurufen. Weitere Informationen finden Sie unter aws history im AWS CLI-Referenzhandbuch.

cli_pager

Gibt das für die Ausgabe verwendete Pager-Programm an. Standardmäßig gibt AWS CLI Version 2 die gesamte Ausgabe über das Standard-Pager-Programm Ihres Betriebssystems zurück.

Kann durch die Umgebungsvariable AWS_PAGER außer Kraft gesetzt werden.

cli_pager=less

Um die gesamte Verwendung eines externen Auslagerungsprogramms zu deaktivieren, setzen Sie die Variable auf eine leere Zeichenfolge, wie im folgenden Beispiel gezeigt.

cli_pager=
cli_timestamp_format

Gibt das Format der in der Ausgabe enthaltenen Zeitstempelwerte an. Sie können einen der folgenden Werte angeben:

  • iso8601 –Der Standardwert für AWS CLI Version 2. Die AWS CLI formatiert alle Zeitstempel nach ISO 8601 neu.

    Gemäß ISO 8601 formatierte Zeitstempel sehen wie die folgenden Beispiele aus. Das erste Beispiel zeigt die Zeit in der Zeitzone Coordinated Universal Time (UTC) an, indem nach der Zeit ein Z eingeschlossen wird. Datum und Uhrzeit werden durch ein T getrennt.

    2019-10-31T22:21:41Z

    Um eine andere Zeitzone anzugeben, geben Sie anstelle des Z ein + oder - und die Anzahl der Stunden, die die gewünschte Zeitzone vor oder hinter UTC liegt, als zweistelligen Wert an. Das folgende Beispiel zeigt die gleiche Zeit wie das vorherige Beispiel, aber angepasst an die Pacific Standard Time, die acht Stunden hinter der UTC-Zeit liegt.

    2019-10-31T14:21:41-08
  • wire –Der Standardwert für AWS CLI Version 1. Die AWS CLI zeigt alle Zeitstempelwerte genau so an, wie sie in der HTTP-Abfrageantwort empfangen wurden.

Zu diesem Eintrag gibt es keine entsprechende Umgebungsvariable oder Befehlszeilenoption.

cli_timestamp_format = iso8601
credential_process

Gibt einen externen Befehl an, den die AWS CLI ausführt, um Authentifizierungs-Anmeldeinformationen für diesen Befehl zu generieren oder abzurufen. Der Befehl muss die Anmeldeinformationen in einem bestimmten Format zurückgeben. Weitere Informationen zur Verwendung dieser Einstellung finden Sie unter Beschaffung von Anmeldeinformationen über einen externen Prozess.

Zu diesem Eintrag gibt es keine entsprechende Umgebungsvariable oder Befehlszeilenoption.

credential_process = /opt/bin/awscreds-retriever --username susan
credential_source

Wird innerhalb von Amazon-EC2-Instances oder -Containern verwendet, um anzugeben, wo die AWS CLI Anmeldeinformationen für die Übernahme der Rolle finden kann, die Sie mit dem Parameter role_arn angegeben haben. Sie können source_profile und credential_source nicht im selben Profil angeben.

Dieser Parameter kann einen von drei Werten haben:

  • Umgebung – Gibt an, dass AWS CLI Quellenanmeldeinformationen aus Umgebungsvariablen abrufen soll.

  • EC2InstanceMetadata – Gibt an, dass AWS CLI die dem EC2-Instance-Profil zugeordnete IAM-Rolle verwenden soll, um Quellanmeldeinformationen abzurufen.

  • EcsContainer –Gibt an, dass AWS CLI die an den ECS-Container angehängte IAM-Rolle als Quellanmeldeinformationen verwenden soll.

credential_source = Ec2InstanceMetadata
duration_seconds

Gibt die maximale Dauer der Rollensitzung in Sekunden an. Der Wert kann zwischen 900 Sekunden (15 Minuten) und der maximalen Sitzungsdauer für die Rolle liegen maximal 43 200). Dieser Parameter ist optional. Standardmäßig ist der Wert auf 3 600 Sekunden festgelegt.

external_id

Gibt eine eindeutige Kennung an, die von Dritten verwendet wird, um eine Rolle in den Konten ihrer Kunden zu übernehmen. Dies entspricht dem Parameter ExternalId in der Operation AssumeRole. Dieser Parameter ist nur erforderlich, wenn die Vertrauensrichtlinie für die Rolle einen Wert für ExternalId angibt. Weitere Informationen finden Sie unter Verwenden einer externen ID, um Dritten Zugriff auf Ihre AWS-Ressourcen zu gewähren im IAM-Benutzerhandbuch.

max_attempts

Gibt einen Wert für die maximale Anzahl von AWS CLI-Wiederholungsversuchen an, den der Wiederholungshandler max_attempts verwendet, wobei der erste Aufruf auf den von Ihnen angegebenen Wert angerechnet wird.

Sie können diesen Wert überschreiben, indem Sie die Umgebungsvariable AWS_MAX_ATTEMPTS verwenden.

max_attempts = 3
mfa_serial

Die ID eines MFA-Geräts, das verwendet werden soll, wenn eine Rolle übernommen wird. Diese ist nur erforderlich, wenn die Vertrauensrichtlinie der übernommenen Rolle eine Bedingung enthält, für die eine MFA-Authentifizierung erforderlich ist. Der Wert kann entweder eine Seriennummer für ein Hardwaregerät (z. B. GAHT12345678) oder ein Amazon-Ressourcenname (ARN) für ein virtuelles MFA-Gerät (z. B. arn:aws:iam::123456789012:mfa/user) sein.

output

Gibt das Standardausgabeformat für Befehle an, die mit diesem Profil angefordert wurden. Sie können alle folgenden Werte angeben:

  • json – Die Ausgabe erfolgt im JSON-Format.

  • yaml –Die Ausgabe erfolgt im YAML-Format.

  • yaml-stream – Die Ausgabe erfolgt im YAML-Format und wird so auch gestreamt. Streaming ermöglicht eine schnellere Handhabung großer Datentypen.

  • text – Die Ausgabe wird als mehrere Zeilen mit tabulatorgetrennten Zeichenfolgenwerten formatiert. Dies kann nützlich sein, um die Ausgabe an einen Textprozessor wie grep, sed oder awk zu übergeben.

  • table – Die Ausgabe erfolgt in Form einer Tabelle mit den Zeichen +|-, um die Zellenrahmen zu bilden. Normalerweise wird die Information in einem benutzerfreundlichen Format wiedergegeben, das viel einfacher zu lesen ist als die anderen, jedoch programmatisch nicht so nützlich ist.

Kann von der Umgebungsvariablen AWS_DEFAULT_OUTPUT oder mit der Befehlszeilenoption --output überschrieben werden.

output = table
parameter_validation

Gibt an, ob der AWS CLI-Client versucht, Parameter zu validieren, bevor diese an den AWS-Service-Endpunkt gesendet werden.

  • true (wahr) – Dies ist der Standardwert. Wenn festgelegt, nimmt die AWS CLI eine lokale Validierung von Befehlszeilenparametern vor.

  • false (falsch): Wenn dieser Wert angegeben ist, validiert die AWS CLI die Befehlszeilenparameter nicht, bevor diese an den AWS-Service-Endpunkt gesendet werden.

Zu diesem Eintrag gibt es keine entsprechende Umgebungsvariable oder Befehlszeilenoption.

parameter_validation = false
region

Gibt die AWS-Region an, an die Anforderungen für Befehle gesendet werden sollen, die mit diesem Profil angefordert wurden.

  • Sie können einen der für den ausgewählten Service verfügbaren Regionscodes angeben, die unter AWS-Regionen und -Endpunkte in der allgemeinen Amazon-Web-Services-Referenz aufgeführt sind.

  • Mit aws_global können Sie den globalen Endpunkt für Services angeben, die neben regionalen Endpunkten auch einen globalen Endpunkt unterstützen, z. B. AWS Security Token Service (AWS STS) und Amazon Simple Storage Service (Amazon S3).

Sie können diesen Wert überschreiben, indem Sie die AWS_REGION-Umgebungsvariable, die AWS_DEFAULT_REGION-Umgebungsvariable oder die Befehlszeilenoption --region verwenden.

region = us-west-2
retry_mode

Gibt an, welchen Wiederholungsmodus AWS CLI verwendet. Es stehen drei Wiederholungsmodi zur Verfügung: Legacy (Standard), Standard und Adaptiv. Weitere Informationen zu Wiederholversuchen finden Sie unter AWS CLI-Wiederholungen.

Sie können diesen Wert überschreiben, indem Sie die Umgebungsvariable AWS_RETRY_MODE verwenden.

retry_mode = standard
role_arn

Gibt den Amazon-Ressourcennamen (ARN) einer IAM-Rolle an, die Sie zum Ausführen der AWS CLI-Befehle verwenden möchten. Sie müssen auch einen der folgenden Parameter angeben, um die Anmeldeinformationen zu identifizieren, die berechtigt sind, diese Rolle zu übernehmen:

  • source_profile

  • credential_source

role_arn = arn:aws:iam::123456789012:role/role-name

Diese Umgebungsvariable überschreibt die AWS_ROLE_ARN-Einstellung.

Weitere Informationen zur Verwendung von Webidentitäten finden Sie unter Übernehmen einer Rolle mit Web-Identität.

role_session_name

Gibt den Namen an, der der Rollensitzung zugeordnet werden soll. Dieser Wert wird dem Parameter RoleSessionName bereitgestellt, wenn die AWS CLI die Operation AssumeRole aufruft, und wird Teil des Benutzer-ARN der übernommenen Rolle: arn:aws:sts::123456789012:assumed-role/role_name/role_session_name Dieser Parameter ist optional. Wenn Sie diesen Wert nicht angeben, wird automatisch ein Sitzungsname generiert. Dieser Name wird in den AWS CloudTrail-Protokollen für Einträge angezeigt, die dieser Sitzung zugeordnet sind.

role_session_name = maria_garcia_role

Diese Umgebungsvariable überschreibt die AWS_ROLE_SESSION_NAME-Einstellung.

Weitere Informationen zur Verwendung von Webidentitäten finden Sie unter Übernehmen einer Rolle mit Web-Identität.

source_profile

Gibt ein benanntes Profil mit langfristigen Anmeldeinformationen an, die die AWS CLI verwenden kann, um eine Rolle zu übernehmen, die Sie mit dem Parameter role_arn angegeben haben. Sie können source_profile und credential_source nicht im selben Profil angeben.

source_profile = production-profile
sso_account_id

Gibt die AWS-Konto-ID an, die die IAM-Rolle mit der Berechtigung enthält, die Sie dem zugeordneten Benutzer des IAM Identity Center erteilen möchten.

Diese Einstellung verfügt nicht über eine Umgebungsvariable oder eine Befehlszeilenoption.

sso_account_id = 123456789012
sso_region

Gibt die AWS-Region an, die den AWS-Zugriffsportalhost enthält. Diese ist getrennt vom region-Standard-CLI-Parameter und kann eine andere Region sein.

Diese Einstellung verfügt nicht über eine Umgebungsvariable oder eine Befehlszeilenoption.

sso_region = us_west-2
sso_registration_scopes

Eine durch Kommas getrennte Liste der für die sso-session zu autorisierenden Bereiche. Bereiche autorisieren den Zugriff auf über IAM-Identity-Center-Bearer-Token autorisierte Endpunkte. Ein gültiger Bereich ist eine Zeichenfolge, beispielsweise sso:account:access. Diese Einstellung gilt nicht für die nicht aktualisierbare Legacy-Konfiguration.

sso_registration_scopes = sso:account:access
sso_role_name

Gibt den Anzeigenamen der IAM-Rolle an, die die Berechtigungen des Benutzers bei der Verwendung dieses Profils definiert.

Diese Einstellung verfügt nicht über eine Umgebungsvariable oder eine Befehlszeilenoption.

sso_role_name = ReadAccess
sso_start_url

Gibt die URL an, die auf das AWS-Zugriffsportal der Organisation verweist. Die AWS CLI verwendet diese URL, um eine Sitzung mit dem IAM–Identity-Center-Service zur Authentifizierung der Benutzer einzurichten. Verwenden Sie eine der folgenden Optionen, um die URL Ihres AWS-Zugriffsportals zu finden:

  • Öffnen Sie Ihre Einladungs-E-Mail. Darin ist die URL des AWS-Zugriffsportals aufgeführt.

  • Öffnen Sie die AWS IAM Identity Center (successor to AWS Single Sign-On)-Konsole unter https://console.aws.amazon.com/singlesignon/. Die URL des AWS-Zugriffsportals ist in Ihren Einstellungen aufgeführt.

Diese Einstellung verfügt nicht über eine Umgebungsvariable oder eine Befehlszeilenoption.

sso_start_url = https://my-sso-portal.awsapps.com/start
use_fips_endpoint

EinigeAWS-Services bieten Endpunkte, die Federal Information Processing Standard (FIPS) 140-2 in einigen Regionen unterstützen. Wenn der AWS-Service FIPS unterstützt, gibt diese Einstellung an, welchen FIPS-Endpunkt die AWS CLI verwenden soll. Im Gegensatz zu Standard-AWS-Endpunkten verwenden FIPS-Endpunkte eine TLS-Softwarebibliothek, die den Standard FIPS 140-2 erfüllt. Diese Endpunkte können von Unternehmen erfordert werden, die mit der US-Regierung interagieren.

Falls definiert, wird diese Umgebungsvariable durch die Umgebungsvariable AWS_USE_FIPS_ENDPOINT und die Befehlszeilenoption --endpoint-url überschrieben.

web_identity_token_file

Gibt den Pfad zu einer Datei an, die ein OAuth 2.0-Zugriffstoken oder OpenID Connect ID-Token enthält, das von einem Identitätsanbieter bereitgestellt wird. Die AWS CLI lädt den Inhalt dieser Datei und übergibt ihn als WebIdentityToken-Argument an die Operation AssumeRoleWithWebIdentity.

Diese Umgebungsvariable überschreibt die AWS_WEB_IDENTITY_TOKEN_FILE-Einstellung.

Weitere Informationen zur Verwendung von Webidentitäten finden Sie unter Übernehmen einer Rolle mit Web-Identität.

tcp_keepalive

Gibt an, ob der AWS CLI-Client TCP-Keepalive-Pakete verwendet.

Zu diesem Eintrag gibt es keine entsprechende Umgebungsvariable oder Befehlszeilenoption.

tcp_keepalive = false

Einstellungen für benutzerdefinierte S3-Befehle

Amazon S3 unterstützt mehrere Einstellungen zur Konfiguration der Ausführung von Amazon-S3-Operationen über die AWS CLI. Einige gelten für alle S3-Befehle in den s3-Namespaces und den s3api-Namespaces. Andere beziehen sich speziell auf „benutzerdefinierte” S3-Befehle, die allgemeine Operationen abstrahieren und mehr als ein Eins-zu-eins-Mapping zu einer API-Operation vornehmen. Für die aws s3-Übertragungsbefehle cp, sync, mv und rm gibt es zusätzliche Einstellungen, die Sie zur Steuerung von S3-Übertragungen verwenden können.

Alle diese Optionen können durch Angabe der verschachtelten Einstellung s3 in Ihrer config-Datei konfiguriert werden. Jede Einstellung wird dann in einer eigenen Zeile eingerückt.

Anmerkung

Diese Einstellungen sind völlig optional. Die aws s3-Übertragungsbefehle müssten auch ohne Konfiguration dieser Einstellungen erfolgreich ausgeführt werden können. Die Einstellungen werden bereitgestellt, damit Sie die Leistung verbessern oder die besondere Umgebung berücksichtigen können, in der Sie diese aws s3-Befehle ausführen.

Diese Einstellungen werden alle unter einem s3-Schlüssel der obersten Ebene in der config-Datei festgelegt, wie im folgenden Beispiel für das development-Profil dargestellt.

[profile development] s3 = max_concurrent_requests = 20 max_queue_size = 10000 multipart_threshold = 64MB multipart_chunksize = 16MB max_bandwidth = 50MB/s use_accelerate_endpoint = true addressing_style = path

Die folgenden Einstellungen gelten für alle S3-Befehle in den s3- oder s3api-Namespaces.

addressing_style

Gibt an, welcher Adressierungsstil verwendet werden soll. Dieser Wert steuert, ob der Bucketname im Hostnamen enthalten oder Teil der URL ist. Gültige Werte sind: path, virtual und auto. Der Standardwert ist auto.

Es gibt zwei Möglichkeiten, einen Amazon-S3-Endpunkt zu erstellen. Die erste wird als virtual bezeichnet und beinhaltet den Bucket-Namen als Teil des Hostnamens. Beispiel: https://bucketname.s3.amazonaws.com. Alternativ können Sie mit dem path-Stil den Bucket-Namen wie einen Pfad im URI behandeln. Beispiel: https://s3.amazonaws.com/bucketname. Standardmäßig wird in der CLI auto verwendet. Dabei wird versucht, möglichst den virtual-Stil zu verwenden, gegebenenfalls wird jedoch auf den path-Stil zurückgegriffen. Wenn Ihr Bucket-Name beispielsweise nicht DNS-kompatibel ist, kann er nicht Teil des Hostnamens sein und muss im Pfad enthalten sein. Bei Verwendung von auto erkennt die CLI diese Bedingung und schaltet automatisch zum path-Stil um. Wenn Sie als Adressierungsstil path festlegen, müssen Sie sicherstellen, dass die AWS-Region, die Sie in der AWS CLI konfiguriert haben, mit der Region Ihres Buckets übereinstimmt.

payload_signing_enabled

Gibt an, ob eine SHA256-Signatur für sigv4-Nutzlasten erfolgen soll. Standardmäßig ist diese Einstellung bei Verwendung von HTTPS für Streaming-Uploads (UploadPart und PutObject) deaktiviert. Standardmäßig ist die Einstellung für Streaming-Uploads (UploadPart und PutObject) auf false gesetzt, allerdings nur, wenn ContentMD5 vorhanden ist (wird standardmäßig generiert) und der Endpunkt HTTPS verwendet.

Wenn die Einstellung auf „true” gesetzt wird, erhalten S3-Anforderungen eine zusätzliche Inhaltsvalidierung in Form einer SHA256-Prüfsumme, die berechnet und in die Anforderungssignatur aufgenommen wird. Wenn „false” festgelegt ist, wird die Prüfsumme nicht berechnet. Eine Deaktivierung dieser Einstellung kann nützlich sein, um den durch die Prüfsummenberechnung entstandenen Leistungsaufwand zu reduzieren.

use_dualstack_endpoint

Verwendet den Amazon-S3-Dual IPv4-/IPv6-Endpunkt für alle s3- und s3api-Befehle. Der Standardwert ist "false". Diese Einstellung und die Einstellung use_accelerate_endpoint schließen sich gegenseitig aus.

Wenn der Wert „true“ festgelegt wird, leitet die AWS CLI alle Amazon-S3-Anforderungen an den Dual IPv4-/IPv6-Endpunkt für die konfigurierte Region.

use_accelerate_endpoint

Verwendet den Amazon-S3-Accelerate-Endpunkt für alle s3- und s3api-Befehle. Der Standardwert ist "false". Diese Einstellung und die Einstellung use_dualstack_endpoint schließen sich gegenseitig aus.

Wenn dieser Wert auf „true“ gesetzt ist, leitet die AWS CLI alle Amazon-S3-Anforderungen an den S3 Accelerate-Endpunkt an s3-accelerate.amazonaws.com. Um diesen Endpunkt zu verwenden, müssen Sie Ihrem Bucket die Verwendung von S3 Accelerate ermöglichen. Alle Anforderungen werden unter Verwendung der virtuellen Bucket-Adressierungsform my-bucket.s3-accelerate.amazonaws.com gesendet. ListBuckets-, CreateBucket- und DeleteBucket -Anfragen werden nicht an den S3 Accelerate-Endpunkt gesendet, da dieser Endpunkt diese Operationen nicht unterstützt. Dieses Verhalten kann auch festgelegt werden, wenn der Parameter --endpoint-url für einen s3- oder s3api-Befehl auf https://s3-accelerate.amazonaws.com oder http://s3-accelerate.amazonaws.com gesetzt ist.

Die folgenden Einstellungen gelten nur für Befehle im Befehlssatz für den s3-Namespace.

max_bandwidth

Gibt die maximale Bandbreite an, die zum Hoch- und Herunterladen von Daten in und aus Amazon S3 verbraucht werden kann. Standardmäßig ist kein Grenzwert festgelegt.

Diese Einstellung begrenzt die maximale Bandbreite, die S3-Befehle zur Übertragung von Daten an und aus Amazon S3 nutzen können. Der Wert gilt nur für Uploads und Downloads, nicht für Kopien oder Löschvorgänge. Der Wert wird in Bytes pro Sekunde ausgedrückt. Der Wert kann wie folgt angegeben werden:

  • Als ganze Zahl. Bei Angabe von 1048576 wird für die maximale Bandbreitennutzung beispielsweise 1 Megabyte pro Sekunde festgelegt.

  • Als ganze Zahl, gefolgt von einem Suffix für die Rate. Sie können Suffixe unter Verwendung von KB/s, MB/s oder GB/s angeben. Zum Beispiel 300KB/s, 10MB/s.

Im Allgemeinen empfehlen wir, zunächst durch Verringerung des Werts für max_concurrent_requests eine niedrigere Bandbreitennutzung anzugeben. Wenn der Bandbreitenverbrauch dadurch nicht angemessen auf die gewünschte Rate begrenzt werden kann, können Sie die Einstellung max_bandwidth verwenden, um den Bandbreitenverbrauch weiter zu begrenzen. Dies liegt daran, dass max_concurrent_requests steuert, wie viele Threads zurzeit ausgeführt werden. Wenn Sie stattdessen zuerst max_bandwidth senken, es aber bei einer hohen max_concurrent_requests-Einstellung belassen, kann dies dazu führen, dass Threads unnötig warten müssen. Dies kann zu einem übermäßigen Ressourcenverbrauch und Verbindungszeitüberschreitungen führen.

max_concurrent_requests

Gibt die maximale Anzahl gleichzeitiger Anforderungen an. Der Standardwert lautet 10.

Die aws s3-Übertragungsbefehle sind Multithread-Befehle. Zu jedem Zeitpunkt können mehrere Amazon-S3-Anforderungen ausgeführt werden. Wenn Sie beispielsweise den Befehl aws s3 cp localdir s3://bucket/ --recursive verwenden, um Dateien in einen S3-Bucket hochzuladen, kann die AWS CLI die Dateien localdir/file1, localdir/file2 und localdir/file3 parallel hochladen. Die Einstellung max_concurrent_requests gibt die maximale Anzahl von Übertragungsoperationen an, die gleichzeitig ausgeführt werden können.

Unter Umständen müssen Sie diesen Wert aus einem der folgenden Gründe ändern:

  • Verringerung dieses Werts – in einigen Umgebungen kann der Standardwert von 10 gleichzeitigen Anforderungen zu einer Überlastung des Systems führen. Die Folge können Zeitüberschreitungen bei der Verbindung oder eine herabgesetzte Reaktionsfähigkeit des Systems sein. Wenn Sie diesen Wert senken, sind die S3-Übertragungsbefehle weniger ressourcenintensiv. Der Nachteil ist jedoch, dass S3-Übertragungen länger dauern können. Eine Senkung dieses Wertes könnte erforderlich sein, wenn Sie ein Tool zur Begrenzung der Bandbreite verwenden.

  • Erhöhung dieses Werts – in einigen Fällen kann es sinnvoll sein, die Amazon-S3-Übertragungen so schnell wie möglich durchzuführen und dabei so viel Netzwerkbandbreite wie nötig zu beanspruchen. In einem solchen Fall reicht die standardmäßige Anzahl gleichzeitiger Anforderungen möglicherweise nicht aus, um die gesamte verfügbare Netzwerkbandbreite zu nutzen. Eine Erhöhung dieses Werts kann dazu führen, dass sich die Zeit für die Durchführung einer Amazon-S3-Übertragung verkürzt.

max_queue_size

Gibt die maximale Anzahl von Aufgaben in der Aufgabenwarteschlange an. Der Standardwert lautet 1000.

Die AWS CLI verwendet intern ein Modell, bei dem Amazon-S3-Aufgaben in die Warteschlange gestellt und dann von Konsumenten ausgeführt werden, deren Zahl durch max_concurrent_requests begrenzt ist. Eine Aufgabe entspricht im Allgemeinen einer einzelnen Amazon-S3-Operation. Eine mögliche Aufgabe könnte beispielsweise PutObjectTask, GetObjectTask oder UploadPartTask sein. Die Aufgaben können der Warteschlange viel schneller hinzugefügt werden, als die Konsumenten die Aufgaben abschließen. Um ein unbegrenztes Wachstum zu vermeiden, ist die Größe der Aufgabenwarteschlange begrenzt. Diese Einstellung ändert den Wert dieser maximalen Anzahl.

Im Allgemeinen müssen Sie diese Einstellung nicht ändern. Diese Einstellung entspricht auch der Anzahl Aufgaben, von denen die AWS CLI weiß, dass sie ausgeführt werden müssen. Somit kann die AWS CLI standardmäßig nur 1000 Aufgaben vorab sehen. Wenn dieser Wert erhöht wird, weiß die AWS CLI schneller, wie viele Aufgaben insgesamt benötigt werden, vorausgesetzt, die Einreihung in die Warteschlange erfolgt schneller als die Aufgabenausführung. Der Nachteil besteht darin, dass für eine größere maximale Warteschlangengröße mehr Speicher benötigt wird.

multipart_chunksize

Gibt die Blockgröße an, die die AWS CLI für mehrteilige Übertragungen einzelner Dateien verwendet. Der Standardwert ist 8 MB und mindestens 5 MB.

Wenn eine Datei den multipart_threshold-Wert überschreitet, teilt die AWS CLI die Datei in Blöcke dieser Größe. Dieser Wert kann mit derselben Syntax wie multipart_threshold angegeben werden, also entweder als ganzzahlige Bytezahl oder unter Verwendung einer Größe und eines Suffixes.

multipart_threshold

Gibt den Größenschwellenwert an, den die AWS CLI für mehrteilige Übertragungen einzelner Dateien verwendet. Der Standardwert ist 8 MB.

Beim Hochladen, Herunterladen oder Kopieren einer Datei gehen die Amazon-S3-Befehle zu mehrteiligen Operationen über, wenn die Datei diese Größe überschreitet. Sie können diesen Wert auf zwei Arten angeben:

  • Dateigröße in Bytes. Zum Beispiel 1048576.

  • Dateigröße mit einem Größensuffix. Sie können KB, MB, GB oder TB verwenden. Zum Beispiel: 10MB, 1GB

    Anmerkung

    S3 kann Beschränkungen für gültige Werte anwenden, die für mehrteilige Operationen verwendet werden können. Weitere Informationen finden Sie in der S3-Dokumentation zu mehrteiligen Uploads im Benutzerhandbuch zu Amazon Simple Storage Service.