Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Konfigurieren Sie das AWS SDK für Ruby
Erfahren Sie, wie Sie das AWS SDK für Ruby konfigurieren. Sie müssen festlegen, wie sich Ihr Code authentifiziert AWS , wenn Sie mit AWS services entwickeln. Sie müssen auch festlegen, was AWS-Region Sie verwenden möchten.
Kette der Anbieter von Anmeldeinformationen
Alle SDKs haben eine Reihe von Stellen (oder Quellen), die sie überprüfen, um gültige Anmeldeinformationen zu erhalten, mit denen eine Anfrage an AWS service einen gestellt werden kann. Nachdem gültige Anmeldeinformationen gefunden wurden, wird die Suche beendet. Diese systematische Suche wird als Standardanbieterkette für Anmeldeinformationen bezeichnet.
Für jeden Schritt in der Kette gibt es unterschiedliche Möglichkeiten, die Werte festzulegen. Das Setzen von Werten direkt im Code hat immer Vorrang, gefolgt von der Einstellung als Umgebungsvariablen und dann in der gemeinsam genutzten AWS config
Datei. Weitere Informationen finden Sie unter Priorität der Einstellungen im Referenzhandbuch AWS SDKsund im Tools-Referenzhandbuch.
Das Referenzhandbuch AWS SDKs und die Tools enthalten Informationen zu den SDK Konfigurationseinstellungen, die von allen verwendet werden, AWS SDKs und zu den AWS CLI. Weitere Informationen zur Konfiguration SDK über die gemeinsam genutzte AWS config
Datei finden Sie unter Gemeinsam genutzte Konfigurationsdateien und Anmeldeinformationen. Weitere Informationen zur Konfiguration SDK durch das Einstellen von Umgebungsvariablen finden Sie unter Unterstützung von Umgebungsvariablen.
Für die Authentifizierung überprüft AWS SDK for Ruby die Anbieter der Anmeldeinformationen in der in der folgenden Tabelle aufgeführten Reihenfolge. AWS
Anbieter von Anmeldeinformationen nach Priorität | AWS SDKsund Referenzhandbuch für Tools | AWS SDK for Ruby API--Referenz |
---|---|---|
AWS Zugangsschlüssel (temporäre und langfristige Anmeldeinformationen) | AWS Zugriffstasten | |
Web-Identitätstoken von AWS Security Token Service (AWS STS) | Nehmen Sie die Rolle des Anbieters von Anmeldeinformationen an Verwenden von |
Aws::AssumeRoleWebIdentityCredentials
|
AWS IAM Identity Center. In diesem Handbuch finden Sie weitere InformationenSDK-Authentifizierung mitAWS. | IAMIdentity Center-Anmeldeinformationsanbieter | Aws::SSOCredentials |
Vertrauenswürdiger Entitätsanbieter (z. B.AWS_ROLE_ARN ). In diesem Handbuch finden Sie weitere Informationen unterEin AWS STS Zugriffstoken erstellen. |
Nehmen Sie die Rolle des Anbieters von Anmeldeinformationen an Verwenden von |
Aws::AssumeRoleCredentials |
Anbieter für Prozessanmeldeinformationen | Anbieter für Anmeldeinformationen verarbeiten | Aws::ProcessCredentials |
Anmeldeinformationen für Amazon Elastic Container Service (AmazonECS) | Anbieter von Container-Anmeldeinformationen | Aws::ECSCredentials |
Anmeldeinformationen für das Amazon Elastic Compute Cloud (AmazonEC2) -Instanzprofil (Anbieter von IMDS Anmeldeinformationen) | IMDSAnbieter von Anmeldeinformationen | Aws::InstanceProfileCredentials |
Wenn die Umgebungsvariable AWS SDK for Ruby gesetzt AWS_SDK_CONFIG_OPT_OUT
ist, wird die gemeinsam genutzte AWS config
Datei, normalerweise unter ~/.aws/config
, nicht nach Anmeldeinformationen durchsucht.
Wenn Sie den empfohlenen Einstieg für neue Benutzer befolgt haben, richten Sie die AWS IAM Identity Center Authentifizierung während SDK-Authentifizierung mitAWS des Themas Erste Schritte ein. Andere Authentifizierungsmethoden sind in verschiedenen Situationen nützlich. Um Sicherheitsrisiken zu vermeiden, empfehlen wir, immer kurzfristige Anmeldeinformationen zu verwenden. Informationen zu anderen Authentifizierungsmethoden finden Sie unter Authentifizierung und Zugriff im AWS SDKsReferenzhandbuch zu Tools.
Ein AWS STS Zugriffstoken erstellen
Die Übernahme einer Rolle beinhaltet die Verwendung einer Reihe temporärer Sicherheitsanmeldedaten, mit denen Sie auf AWS Ressourcen zugreifen können, auf die Sie normalerweise keinen Zugriff haben. Diese temporären Anmeldeinformationen bestehen aus einer Zugriffsschlüssel-ID, einem geheimen Zugriffsschlüssel und einem Sicherheits-Token. Sie können die Aws::AssumeRoleCredentials
Methode verwenden, um ein Zugriffstoken AWS Security Token Service
(AWS STS) zu erstellen.
Im folgenden Beispiel linked::account::arn
wird ein Zugriffstoken verwendet, um ein Amazon S3 S3-Client-Objekt zu erstellen, wobei der Amazon-Ressourcenname (ARN) der Rolle, die übernommen werden soll, und ein Bezeichner für die angenommene Rollensitzung session-name
ist.
role_credentials = Aws::AssumeRoleCredentials.new( client: Aws::STS::Client.new, role_arn: "
linked::account::arn
", role_session_name: "session-name
" ) s3 = Aws::S3::Client.new(credentials: role_credentials)
Weitere Informationen zur Einstellung role_arn
oder oder role_session_name
zur Einstellung dieser Optionen stattdessen mithilfe der gemeinsam genutzten AWS config
Datei finden Sie unter Assume role Credential Provider im Referenzhandbuch AWS SDKsund im Tools-Referenzhandbuch.
Festlegen einer Region
Sie müssen eine Region angeben, wenn Sie die meisten AWS services verwenden. The AWS SDK for Ruby sucht in der folgenden Reihenfolge nach einer Region:
Weitere Informationen zu dieser region
Einstellung finden Sie AWS-Regionim Referenzhandbuch AWS SDKsund im Tools-Referenzhandbuch. Im Rest dieses Abschnitts wird beschrieben, wie Sie eine Region festlegen, wobei mit der gängigsten Methode begonnen wird.
Einstellen der Region mithilfe der gemeinsam genutzten config
Datei
Legen Sie die Region fest, indem Sie die region
Variable in der gemeinsam genutzten AWS config
Datei festlegen. Weitere Informationen zur gemeinsam genutzten config
Datei finden Sie unter Dateien mit gemeinsam genutzten Konfigurationen und Anmeldeinformationen im AWS SDKsReferenzhandbuch zu Tools.
Beispiel für die Einstellung dieses Werts in der config
Datei:
[default] region = us-west-2
Die gemeinsam genutzte config
Datei wird nicht überprüft, wenn die Umgebungsvariable gesetzt AWS_SDK_CONFIG_OPT_OUT
ist.
Einstellung der Region mithilfe von Umgebungsvariablen
Legen Sie die Region fest, indem Sie die AWS_REGION
Umgebungsvariable festlegen.
Verwenden Sie den export
Befehl, um diese Variable auf UNIX-basierten Systemen wie Linux oder macOS festzulegen. Im folgenden Beispiel wird die Region auf festgelegt. us-west-2
export AWS_REGION=us-west-2
Verwenden Sie den set
-Befehl, um diese Variable unter Windows zu definieren. Im folgenden Beispiel wird die Region auf festgelegtus-west-2
.
set AWS_REGION=us-west-2
Einstellung der Region mit Aws.config
Legen Sie die Region fest, indem Sie dem Aws.config
Hash einen region
Wert hinzufügen. Im folgenden Beispiel wird der Aws.config
Hash aktualisiert, sodass er die us-west-1
Region verwendet.
Aws.config.update({region: 'us-west-1'})
Alle Clients oder Ressourcen, die Sie später erstellen, sind an diese Region gebunden.
Einstellung der Region in einem Client- oder Ressourcenobjekt
Legen Sie die Region fest, wenn Sie einen AWS Client oder eine Ressource erstellen. Im folgenden Beispiel wird ein Amazon S3 S3-Ressourcenobjekt in der us-west-1
Region erstellt. Wählen Sie die richtige Region für Ihre AWS Ressourcen. Ein Service-Client-Objekt ist unveränderlich. Sie müssen also für jeden Service, an den Sie Anfragen stellen, und für Anfragen an denselben Service mit einer anderen Konfiguration einen neuen Client erstellen.
s3 = Aws::S3::Resource.new(region: 'us-west-1')
Einen nicht standardmäßigen Endpunkt einrichten
Die Region wird verwendet, um einen SSL Endpunkt für AWS Anfragen zu erstellen. Wenn Sie in der ausgewählten Region einen nicht standardmäßigen Endpunkt verwenden müssen, fügen Sie einen endpoint
Eintrag hinzuAws.config
. Sie können den auch festlegen, endpoint:
wenn Sie einen Service-Client oder ein Ressourcenobjekt erstellen. Das folgende Beispiel erstellt ein Amazon S3 S3-Ressourcenobjekt auf dem other_endpoint
Endpunkt.
s3 = Aws::S3::Resource.new(endpoint: other_endpoint)
Informationen zur Verwendung eines Endpunkts Ihrer Wahl für API Anfragen und zur Beibehaltung dieser Auswahl finden Sie unter der Konfigurationsoption für dienstspezifische Endgeräte im Referenzhandbuch AWS SDKsund im Tools-Referenzhandbuch.