

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.

# Übernehmen Sie die Rolle Credential Provider
<a name="feature-assume-role-credentials"></a>

**Anmerkung**  
Hilfe zum Verständnis des Layouts von Einstellungsseiten oder zur Interpretation der **nachfolgenden Tabelle Support by AWS SDKs und Tools** finden Sie unter[Die Einstellungsseiten dieses Handbuchs verstehen](settings-reference.md#settingsPages).

Die Übernahme einer Rolle beinhaltet die Verwendung einer Reihe temporärer Sicherheitsanmeldedaten für den Zugriff auf AWS Ressourcen, auf die Sie sonst möglicherweise keinen Zugriff hätten. Diese temporären Anmeldeinformationen bestehen aus einer Zugriffsschlüssel-ID, einem geheimen Zugriffsschlüssel und einem Sicherheits-Token. 

Um Ihr SDK oder Tool für die Übernahme einer Rolle einzurichten, müssen Sie zunächst eine bestimmte *Rolle* erstellen oder identifizieren, die Sie übernehmen möchten. IAM-Rollen werden durch eine Rolle mit dem Amazon Resource Name ([ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)) eindeutig identifiziert. Rollen bauen Vertrauensbeziehungen zu einer anderen Entität auf. Die vertrauenswürdige Entität, die die Rolle verwendet, kann ein anderer AWS-Service AWS-Konto, ein Web-Identitätsanbieter oder ein OIDC- oder SAML-Verbund sein. 

Nachdem die IAM-Rolle identifiziert wurde und diese Rolle Ihnen vertraut, können Sie Ihr SDK oder Tool so konfigurieren, dass die von der Rolle gewährten Berechtigungen verwendet werden. Verwenden Sie dazu die folgenden Einstellungen. 

Anleitungen zu den ersten Schritten mit diesen Einstellungen finden Sie [Übernahme einer Rolle mit AWS Anmeldeinformationen zur Authentifizierung AWS SDKs und Tools](access-assume-role.md) in diesem Handbuch.

## Nehmen Sie die Einstellungen des Anbieters für Anmeldeinformationen an
<a name="feature-assume-role-credentials-settings"></a>

Konfigurieren Sie diese Funktionalität wie folgt:

**`credential_source`- Einstellung für gemeinsam genutzte AWS `config` Dateien**  
Wird innerhalb von Amazon EC2 EC2-Instances oder Amazon Elastic Container Service-Containern verwendet, um anzugeben, wo das SDK oder Tool Anmeldeinformationen finden kann, die berechtigt sind, die Rolle anzunehmen, die Sie mit dem `role_arn` Parameter angeben.  
**Standardwert: Keiner**  
**Zulässige Werte**:  
+ **Umgebung** — Gibt an, dass das SDK oder Tool Quellanmeldedaten aus den Umgebungsvariablen [`AWS_ACCESS_KEY_ID`und](feature-static-credentials.md) abrufen soll`AWS_SECRET_ACCESS_KEY`.
+ **Ec2 InstanceMetadata — Gibt an, dass das SDK oder Tool die dem EC2-Instanzprofil** [zugeordnete IAM-Rolle verwenden soll, um Quellanmeldedaten](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) abzurufen.
+ **EcsContainer**— Gibt an, dass das SDK oder Tool die dem [Amazon ECS-Container zugeordnete IAM-Rolle oder die dem Amazon EKS-Container](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html) [zugeordnete IAM-Rolle verwenden soll, um Quellanmeldedaten](https://docs.aws.amazon.com/eks/latest/userguide/security-iam-service-with-iam.html) abzurufen.
Sie können `credential_source` und `source_profile` nicht im selben Profil angeben.  
Beispiel für die Einstellung in einer `config` Datei, um anzugeben, dass Anmeldeinformationen von Amazon EC2 bezogen werden sollen:  

```
credential_source = Ec2InstanceMetadata
role_arn = arn:aws:iam::123456789012:role/my-role-name
```

**`duration_seconds`- Einstellung für gemeinsam genutzte AWS `config` Dateien**  
Gibt die maximale Dauer der Rollensitzung in Sekunden an.  
Diese Einstellung gilt nur, wenn das Profil angibt, dass eine Rolle übernommen werden soll.   
**Standardwert:** 3600 Sekunden (eine Stunde)  
**Gültige Werte:** Der Wert kann zwischen 900 Sekunden (15 Minuten) und der für die Rolle konfigurierten Einstellung für die maximale Sitzungsdauer liegen (die maximal 43200 Sekunden oder 12 Stunden betragen kann). Weitere Informationen finden Sie [im *IAM-Benutzerhandbuch* unter Einstellung „Maximale Sitzungsdauer“ für eine Rolle anzeigen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html#id_roles_use_view-role-max-session).  
Beispiel für die Einstellung dieser Einstellung in einer `config` Datei:  

```
duration_seconds = 43200
```

**`external_id`- Einstellung für gemeinsam genutzte AWS `config` Dateien**  
Gibt eine eindeutige Kennung an, die von Dritten verwendet wird, um eine Rolle in den Konten ihrer Kunden zu übernehmen.  
Diese Einstellung gilt nur, wenn das Profil angibt, dass eine Rolle übernommen werden soll und die Vertrauensrichtlinie für die Rolle einen Wert für erfordert`ExternalId`. Der Wert ist dem `ExternalId` Parameter zugeordnet, der an den `AssumeRole` Vorgang übergeben wird, wenn das Profil eine Rolle angibt.   
**Standardwert:** Keiner.   
**Gültige Werte:** Weitere Informationen finden Sie im *IAM-Benutzerhandbuch* unter [So verwenden Sie eine externe ID, wenn Sie Dritten Zugriff auf Ihre AWS Ressourcen gewähren](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html).  
Beispiel für die Einstellung in einer `config` Datei:  

```
external_id = unique_value_assigned_by_3rd_party
```

**`mfa_serial`- Einstellung für gemeinsam genutzte AWS `config` Dateien**  
Gibt die Identifikations- oder Seriennummer eines Geräts mit Multi-Faktor-Authentifizierung (MFA) an, das der Benutzer verwenden muss, wenn er eine Rolle übernimmt.  
Erforderlich, wenn Sie eine Rolle übernehmen, bei der die Vertrauensrichtlinie für diese Rolle eine Bedingung beinhaltet, die eine MFA-Authentifizierung erfordert. Weitere Informationen zu MFA finden Sie unter [AWS Multi-Faktor-Authentifizierung in IAM im *IAM-Benutzerhandbuch*](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html).   
**Standardwert**: Keiner.   
**Gültige Werte:** 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 sein. Das Format des ARN ist: `arn:aws:iam::account-id:mfa/mfa-device-name`  
Beispiel für die Einstellung in einer `config` Datei:  
In diesem Beispiel wird davon ausgegangen, dass ein virtuelles MFA-Gerät namens`MyMFADevice`, für das Konto erstellt und für einen Benutzer aktiviert wurde.  

```
mfa_serial = arn:aws:iam::123456789012:mfa/MyMFADevice
```

**`role_arn`- Einstellung für gemeinsam genutzte AWS `config` Dateien`AWS_ROLE_ARN`- Umgebungsvariable`aws.roleArn`- JVM-Systemeigenschaft: nur Java/Kotlin **  
Gibt den Amazon-Ressourcennamen (ARN) einer IAM-Rolle an, die Sie verwenden möchten, um mit diesem Profil angeforderte Operationen auszuführen.  
**Standardwert:** Keiner.   
**Gültige Werte:** Der Wert muss der ARN einer IAM-Rolle sein und wie folgt formatiert sein: `arn:aws:iam::account-id:role/role-name`  
 Darüber hinaus müssen Sie auch **eine** der folgenden Einstellungen angeben:  
+ `source_profile`— Um ein anderes Profil zu identifizieren, das verwendet werden soll, um Anmeldeinformationen zu finden, die berechtigt sind, die Rolle in diesem Profil zu übernehmen.
+ `credential_source`— Um entweder Anmeldeinformationen zu verwenden, die durch die aktuellen Umgebungsvariablen identifiziert wurden, oder Anmeldeinformationen, die an ein Amazon EC2 EC2-Instance-Profil angehängt sind, oder eine Amazon ECS-Container-Instance.
+ `web_identity_token_file`— Um öffentliche Identitätsanbieter oder einen OpenID Connect (OIDC) -kompatiblen Identitätsanbieter für Benutzer zu verwenden, die in einer Mobil- oder Webanwendung authentifiziert wurden.

**`role_session_name`- Einstellung für gemeinsam genutzte Dateien AWS `config``AWS_ROLE_SESSION_NAME`- Umgebungsvariable`aws.roleSessionName`- JVM-Systemeigenschaft: nur Java/Kotlin **  
Gibt den Namen an, der der Rollensitzung zugeordnet werden soll. Dieser Name erscheint in den AWS CloudTrail Protokollen für Einträge, die mit dieser Sitzung verknüpft sind, was bei der Prüfung nützlich sein kann. *Einzelheiten finden Sie unter [CloudTrailUserIdentity-Element](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html) im AWS CloudTrail Benutzerhandbuch.*  
**Standardwert: Ein optionaler Parameter**. Wenn Sie diesen Wert nicht angeben, wird automatisch ein Sitzungsname generiert, wenn das Profil eine Rolle annimmt.  
**Gültige Werte:** Werden für den `RoleSessionName` Parameter bereitgestellt, wenn die AWS API AWS CLI oder die `AssumeRole` Operation (oder Operationen wie die `AssumeRoleWithWebIdentity` Operation) in Ihrem Namen aufruft. Der Wert wird Teil des angenommenen Rollenbenutzers Amazon Resource Name (ARN), den Sie abfragen können, und wird als Teil der CloudTrail Protokolleinträge für Operationen angezeigt, die von diesem Profil aufgerufen werden.  
 `arn:aws:sts::123456789012:assumed-role/my-role-name/my-role_session_name`.  
Beispiel für die Einstellung in einer `config` Datei:  

```
role_session_name = my-role-session-name
```

**`source_profile`- Einstellung für gemeinsam genutzte AWS `config` Dateien**  
Gibt ein anderes Profil an, dessen Anmeldeinformationen verwendet werden, um die in der `role_arn` Einstellung im ursprünglichen Profil angegebene Rolle anzunehmen. Informationen zur Verwendung von Profilen in geteilten `credentials` Dateien AWS `config` und Dateien finden Sie unter[Geteilte `credentials` Dateien `config` und Dateien](file-format.md).  
Wenn Sie ein Profil angeben, bei dem es sich auch um ein Rollenübernahmeprofil handelt, wird jede Rolle der Reihe nach übernommen, um die Anmeldeinformationen vollständig aufzulösen. Diese Kette wird unterbrochen, wenn das SDK auf ein Profil mit Anmeldeinformationen trifft. Die Rollenverkettung begrenzt Ihre Rollensitzung AWS CLI oder Ihre AWS API-Rollensitzung auf maximal eine Stunde und kann nicht verlängert werden. Weitere Informationen finden Sie im *IAM-Benutzerhandbuch* unter [Begriffe und Konzepte für Rollen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html).  
**Standardwert:** Keiner.  
**Gültige Werte:** Eine Textzeichenfolge, die aus dem Namen eines in den `credentials` Dateien `config` und definierten Profils besteht. Sie müssen auch einen Wert für `role_arn` im aktuellen Profil angeben.  
Sie können `credential_source` und `source_profile` nicht im selben Profil angeben.  
Beispiel für die Einstellung in einer Konfigurationsdatei:  

```
[profile A]
source_profile = B
role_arn =  arn:aws:iam::123456789012:role/RoleA
role_session_name = ProfileARoleSession
                
[profile B]
credential_process = ./aws_signing_helper credential-process --certificate /path/to/certificate --private-key /path/to/private-key --trust-anchor-arn arn:aws:rolesanywhere:region:account:trust-anchor/TA_ID --profile-arn arn:aws:rolesanywhere:region:account:profile/PROFILE_ID --role-arn arn:aws:iam::account:role/ROLE_ID
```
Im vorherigen Beispiel weist das `A` Profil das SDK oder Tool an, automatisch nach den Anmeldeinformationen für das verknüpfte `B` Profil zu suchen. In diesem Fall verwendet das `B` Profil das Credential Helper-Tool, das von bereitgestellt wird[Authentifizierung AWS SDKs und Tools mit IAM Roles Anywhere](access-rolesanywhere.md), um Anmeldeinformationen für das AWS SDK abzurufen. Diese temporären Anmeldeinformationen werden dann von Ihrem Code für den Zugriff auf AWS Ressourcen verwendet. An die angegebene Rolle müssen IAM-Berechtigungsrichtlinien angehängt sein, die die Ausführung des angeforderten Codes ermöglichen, z. B. der Befehl oder die API-Methode. AWS-Service Für jede Aktion, die vom Profil `A` ausgeführt wird, ist der Name der Rollensitzung in den CloudTrail Protokollen enthalten.   
Als zweites Beispiel für Rollenverkettung kann die folgende Konfiguration verwendet werden, wenn Sie eine Anwendung auf einer Amazon Elastic Compute Cloud-Instance haben und möchten, dass diese Anwendung eine andere Rolle übernimmt.   

```
[profile A]
source_profile = B
role_arn =  arn:aws:iam::123456789012:role/RoleA
role_session_name = ProfileARoleSession
                
[profile B]
credential_source=Ec2InstanceMetadata
```
Profile verwendet `A` die Anmeldeinformationen der Amazon EC2 EC2-Instance, um die angegebene Rolle anzunehmen, und erneuert die Anmeldeinformationen automatisch.  


**`web_identity_token_file`- Einstellung für gemeinsam genutzte AWS `config` Dateien`AWS_WEB_IDENTITY_TOKEN_FILE`- Umgebungsvariable`aws.webIdentityTokenFile`- JVM-Systemeigenschaft: nur Java/Kotlin **  
Gibt den Pfad zu einer Datei an, die ein Zugriffstoken von einem [unterstützten OAuth 2.0-Anbieter](https://wikipedia.org/wiki/List_of_OAuth_providers) oder [OpenID Connect ID-Identitätsanbieter](https://openid.net/developers/certified/) enthält.  
Diese Einstellung ermöglicht die Authentifizierung mithilfe von Web Identity Federation-Anbietern wie [Google](https://developers.google.com/identity/protocols/OAuth2), [Facebook](https://developers.facebook.com/docs/facebook-login/overview) und [Amazon](https://login.amazon.com/) und vielen anderen. Das SDK oder das Entwicklertool lädt den Inhalt dieser Datei und übergibt ihn als `WebIdentityToken` Argument, wenn es den `AssumeRoleWithWebIdentity` Vorgang in Ihrem Namen aufruft.  
**Standardwert:** Keiner.   
**Gültige Werte:** Dieser Wert muss ein Pfad und ein Dateiname sein. Die Datei muss ein OAuth 2.0-Zugriffstoken oder ein OpenID Connect-Token enthalten, das Ihnen von einem Identitätsanbieter zur Verfügung gestellt wurde. Relative Pfade werden als relativ zum Arbeitsverzeichnis des Prozesses behandelt.

## Support von AWS SDKs und Tools
<a name="assume-role-sdk-compat"></a>

Im Folgenden werden die in diesem Thema beschriebenen Funktionen und Einstellungen SDKs unterstützt. Alle teilweisen Ausnahmen werden vermerkt. Alle Einstellungen für JVM-Systemeigenschaften werden AWS SDK für Kotlin nur von AWS SDK für Java und vom unterstützt.


| SDK | Unterstützt | Hinweise oder weitere Informationen | 
| --- | --- | --- | 
| [AWS CLI  ](https://docs.aws.amazon.com/cli/latest/userguide/) v2 | Ja |  | 
| [SDK for C\$1\$1](https://docs.aws.amazon.com/sdk-for-cpp/latest/developer-guide/) | Teilweise | credential\$1sourcewird nicht unterstützt. duration\$1secondsnicht unterstützt. mfa\$1serialnicht unterstützt. | 
| [SDK for Go V2 (1.x)](https://docs.aws.amazon.com/sdk-for-go/v2/developer-guide/) | Ja |  | 
| [SDK for Go 1.x (V1)](https://docs.aws.amazon.com/sdk-for-go/latest/developer-guide/) | Ja | Um die Einstellungen für gemeinsam genutzte config Dateien zu verwenden, müssen Sie das Laden aus der Konfigurationsdatei aktivieren; siehe [Sessions](https://docs.aws.amazon.com/sdk-for-go/api/aws/session/). | 
| [SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/) | Teilweise | mfa\$1serialwird nicht unterstützt. duration\$1secondsnicht unterstützt. | 
| [SDK for Java 1.x](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/) | Teilweise | credential\$1sourcewird nicht unterstützt. mfa\$1serialnicht unterstützt. JVM-Systemeigenschaften werden nicht unterstützt.  | 
| [SDK für 3.x JavaScript ](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/) | Ja |  | 
| [SDK für 2.x JavaScript ](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/) | Teilweise | credential\$1sourcewird nicht unterstützt. | 
| [SDK für Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin/latest/developer-guide/) | Ja |  | 
| [SDK for .NET 4.x](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/) | Ja |  | 
| [SDK for .NET 3.x](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/) | Ja |  | 
| [SDK for PHP 3.x](https://docs.aws.amazon.com/sdk-for-php/latest/developer-guide/) | Ja |  | 
| [SDK for Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html) | Ja |  | 
| [SDK for Ruby 3.x](https://docs.aws.amazon.com/sdk-for-ruby/latest/developer-guide/) | Ja |  | 
| [SDK für Rust](https://docs.aws.amazon.com/sdk-for-rust/latest/dg/) | Ja |  | 
| [SDK für Swift](https://docs.aws.amazon.com/sdk-for-swift/latest/developer-guide/) | Ja |  | 
| [Tools für PowerShell V5](https://docs.aws.amazon.com/powershell/latest/userguide/) | Ja |  | 
| [Tools für V4 PowerShell ](https://docs.aws.amazon.com/powershell/v4/userguide/) | Ja |  | 