

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.

# Anfordern des Zugriffs auf Amazon-S3-Daten über S3 Access Grants
<a name="access-grants-credentials"></a>

Nachdem Sie [eine Zugriffsberechtigung](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-grant.html) mit S3 Access Grants erstellt haben, können die Berechtigten Anmeldeinformationen anfordern, um auf die S3-Daten zuzugreifen, auf die ihnen Zugriff gewährt wurde. Bei den Empfängern kann es sich um AWS Identity and Access Management (IAM-) Principals, Ihre Unternehmensverzeichnisidentitäten oder autorisierte Anwendungen handeln. 

Eine Anwendung oder AWS-Service kann den `GetDataAccess` API-Vorgang S3 Access Grants verwenden, um S3 Access Grants im Namen eines Empfängers um Zugriff auf Ihre S3-Daten zu bitten. `GetDataAccess`überprüft zunächst, ob Sie dieser Identität Zugriff auf die Daten gewährt haben. Anschließend ruft S3 Access Grants mithilfe der [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)-API-Operation ein temporäres Anmeldeinformationstoken ab und sendet es an den Anforderer. Dieses Token für temporäre Anmeldeinformation ist ein AWS -Security-Token-Service (AWS STS)-Token.

Die `GetDataAccess`-Anforderung muss den Parameter `target` enthalten, um den Umfang der S3-Daten anzugeben, für den die temporären Anmeldeinformationen gelten. Dieser `target` Geltungsbereich kann mit dem Geltungsbereich der Finanzhilfe übereinstimmen oder eine Teilmenge dieses Geltungsbereichs sein, aber der `target` Geltungsbereich muss innerhalb des Geltungsbereichs der Finanzhilfe liegen, die dem Finanzhilfeempfänger gewährt wurde. In der Anforderung muss auch der Parameter `permission` angegeben werden, der die Berechtigungsstufe für die temporären Anmeldeinformationen angibt, `READ`, `WRITE` oder `READWRITE`.

**Recht**  
Der Anforderer kann die Berechtigungsstufe des temporären Tokens in der Anforderung für Anmeldeinformationen angeben. Mit dem Parameter `privilege` kann der Anforderer den Umfang des Zugriffs für die temporären Anmeldeinformationen innerhalb der Grenzen des Gewährungsumfangs reduzieren oder erhöhen. Der Standardwert des Parameters `privilege` ist `Default`. Das bedeutet, dass der Zielumfang der zurückgegebenen Anmeldeinformationen der ursprüngliche Umfang der Gewährung ist. Der andere mögliche Wert für `privilege` ist `Minimal`. Wenn der `target`-Umfang im Vergleich zum ursprünglichen Umfang der Gewährung reduziert wird, wird der Umfang der temporären Anmeldeinformationen an den `target`-Umfang angepasst, solange der `target`-Umfang innerhalb des Gewährungsumfangs liegt. 

Die folgende Tabelle zeigt die Auswirkungen des Parameters `privilege` auf zwei Gewährungen. Eine Gewährung hat den Umfang `S3://amzn-s3-demo-bucket1/bob/*`. Dieser Umfang umfasst das gesamte Präfix `bob/` im Bucket `amzn-s3-demo-bucket1`. Die andere Gewährung hat den Umfang `S3://amzn-s3-demo-bucket1/bob/reports/*`. Dieser Umfang umfasst nur das Präfix `bob/reports/` im Bucket `amzn-s3-demo-bucket1`. 


|  Umfang der Gewährung  |  Angeforderter Umfang  |  Recht  |  Zurückgegebener Umfang  |  Auswirkung  | 
| --- | --- | --- | --- | --- | 
| S3://amzn-s3-demo-bucket1/bob/\$1 | amzn-s3-demo-bucket1/bob/\$1 | Default  | amzn-s3-demo-bucket1/bob/\$1  |  Der Anforderer hat Zugriff auf alle Objekte im Bucket `amzn-s3-demo-bucket1`, deren Schlüsselnamen mit dem Präfix `bob/` beginnen.  | 
| S3://amzn-s3-demo-bucket1/bob/\$1 | amzn-s3-demo-bucket1/bob/  | Minimal  | amzn-s3-demo-bucket1/bob/  |  Ohne das Platzhalterzeichen (\$1) nach dem Präfixnamen `bob/` hat der Anforderer nur Zugriff auf das Objekt mit dem Namen `bob/` im Bucket `amzn-s3-demo-bucket1`. Ein solches Objekt ist nicht üblich. Der Anforderer hat keinen Zugriff auf andere Objekte, auch nicht auf Objekte, deren Schlüsselnamen mit dem Präfix `bob/` beginnen.  | 
| S3://amzn-s3-demo-bucket1/bob/\$1 | amzn-s3-demo-bucket1/bob/images/\$1  | Minimal  | amzn-s3-demo-bucket1/bob/images/\$1  |  Der Anforderer hat Zugriff auf alle Objekte im Bucket `amzn-s3-demo-bucket1`, deren Schlüsselnamen mit dem Präfix `bob/images/*` beginnen.  | 
| S3://amzn-s3-demo-bucket1/bob/reports/\$1 | amzn-s3-demo-bucket1/bob/reports/file.txt  | Default  | amzn-s3-demo-bucket1/bob/reports/\$1  |  Der Anforderer hat Zugriff auf alle Objekte im Bucket `amzn-s3-demo-bucket1`, deren Schlüsselnamen mit dem Präfix `bob/reports` beginnen. Dies entspricht dem Umfang der entsprechenden Gewährung.  | 
| S3://amzn-s3-demo-bucket1/bob/reports/\$1 | amzn-s3-demo-bucket1/bob/reports/file.txt  | Minimal  | amzn-s3-demo-bucket1/bob/reports/file.txt  |  Der Anforderer hat nur Zugriff auf das Objekt mit dem Schlüsselnamen `bob/reports/file.txt` im Bucket `amzn-s3-demo-bucket1`. Der Anforderer hat keinen Zugriff auf andere Objekte.   | 

**Verzeichnis-Identitäten**  
`GetDataAccess` berücksichtigt beim Abgleich geeigneter Zuschüsse alle an einem Antrag beteiligten Identitäten. Bei Corporate-Directory-Identitäten gibt `GetDataAccess` auch die Grants der IAM-Identität zurück, die für die identitätsbewusste Sitzung verwendet wird. Weitere Informationen zu identitätsbasierten Sitzungen finden Sie unter [Gewährung von Berechtigungen zur Verwendung identitätsbasierter Konsolensitzungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_control-access_sts-setcontext.html) im *AWS Identity and Access Management Benutzerhandbuch*. `GetDataAccess` generiert Anmeldeinformationen, die den Geltungsbereich auf die restriktivste Gewährung beschränken, wie in der folgenden Tabelle dargestellt:


|  Geltungsbereich für IAM-Identität gewähren |  Geltungsbereich für Verzeichnisidentität gewähren |  Angeforderter Umfang  |  Zurückgegebener Umfang  |  Recht  |  Auswirkung  | 
| --- | --- | --- | --- | --- | --- | 
| S3://amzn-s3-demo-bucket1/bob/\$1 | amzn-s3-demo-bucket1/bob/images/\$1 | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | S3://amzn-s3-demo-bucket1/bob/images/\$1  | Default |  Der Antragsteller hat Zugriff auf alle Objekte, deren Schlüsselnamen mit dem Präfix *bob/* beginnen, als Teil des Grant für die IAM-Rolle, ist aber auf die Präfixe *bob/images/* als Teil des Grant für die Verzeichnisidentität beschränkt. Sowohl die IAM-Rolle als auch die Verzeichnisidentität bieten Zugriff auf den angeforderten Bereich `bob/images/image1.jpeg`, aber die Verzeichnisidentität hat eine restriktivere Berechtigung. Der zurückgegebene Bereich ist also auf die restriktivere Erlaubnis für die Verzeichnisidentität beschränkt.  | 
| S3://amzn-s3-demo-bucket1/bob/\$1 | amzn-s3-demo-bucket1/bob/images/\$1 | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | Minimal |  Da das Privileg auf gesetzt ist`Minimal`, wird nur der angeforderte Bereich zurückgegeben, obwohl die Identität Zugriff auf einen größeren Bereich hat`bob/images/image1.jpeg`.  | 
| S3://amzn-s3-demo-bucket1/bob/images/\$1 | amzn-s3-demo-bucket1/bob/\$1 | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | S3://amzn-s3-demo-bucket1/bob/images/\$1  | Default |  Der Antragsteller hat Zugriff auf alle Objekte, deren Schlüsselnamen mit dem Präfix *bob/* als Teil der Gewährung für die Verzeichnisidentität beginnen, ist jedoch auf die Präfixe *bob/images/* als Teil der Gewährung für die IAM-Rolle beschränkt. Sowohl die IAM-Rolle als auch die Verzeichnisidentität bieten Zugriff auf den angeforderten Bereich `bob/images/image1.jpeg`, aber die IAM-Rolle hat eine restriktivere Berechtigung. Der zurückgegebene Bereich ist also auf die restriktivere Erlaubnis für die IAM-Rolle beschränkt.  | 
| S3://amzn-s3-demo-bucket1/bob/images/\$1 | amzn-s3-demo-bucket1/bob/\$1 | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | S3://amzn-s3-demo-bucket1/bob/images/image1.jpeg  | Minimal |  Da das Privileg auf gesetzt ist`Minimal`, wird nur der angeforderte Bereich zurückgegeben, obwohl die Identität Zugriff auf einen größeren Bereich hat`bob/images/image1.jpeg`.  | 

**Dauer**  
Der Parameter `durationSeconds` legt die Gültigkeitsdauer der temporären Anmeldeinformationen in Sekunden fest. Der Standardwert ist `3600` Sekunden (1 Stunde). Der Anforderer (Empfänger) kann jedoch einen Bereich von `900` Sekunden (15 Minuten) bis `43200` Sekunden (12 Stunden) angeben. Wenn der Empfänger einen höheren Wert als diesen Höchstwert anfordert, schlägt die Anforderung fehl. 

**Anmerkung**  
Wenn der Speicherort ein Objekt ist, legen Sie in Ihrer Anforderung eines temporären Tokens den Wert des Parameters `targetType` auf `Object` fest. Dieser Parameter ist nur erforderlich, wenn es sich der Speicherort ein Objekt ist und die Berechtigungsstufe `Minimal` ist. Wenn der Speicherort ein Bucket oder ein Präfix ist, müssen Sie diesen Parameter nicht angeben.

**Beispiele**  
Sie können temporäre Anmeldeinformationen anfordern, indem Sie die AWS Command Line Interface (AWS CLI), die Amazon S3 S3-REST-API und die verwenden AWS SDKs. Informationen finden Sie in diesen Beispielen.

Weitere Informationen finden Sie [GetDataAccess](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetDataAccess.html)in der *Amazon Simple Storage Service API-Referenz*.

## Mit dem AWS CLI
<a name="access-grants-credentials-cli"></a>

Informationen zur AWS CLI Installation [von finden Sie unter Installation von AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) im *AWS Command Line Interface Benutzerhandbuch*. 

Wenn Sie den folgenden Beispielbefehl verwenden möchten, ersetzen Sie `user input placeholders` durch Ihre eigenen Informationen.

**Example Anfordern temporärer Anmeldeinformationen**  
Anforderung:  

```
aws s3control get-data-access \
--account-id 111122223333 \
--target s3://amzn-s3-demo-bucket/prefixA* \
--permission READ \
--privilege Default \
--region us-east-2
```
Antwort:  

```
{
"Credentials": {
"AccessKeyId": "Example-key-id",
"SecretAccessKey": "Example-access-key",
"SessionToken": "Example-session-token",
"Expiration": "2023-06-14T18:56:45+00:00"},
"MatchedGrantTarget": "s3://amzn-s3-demo-bucket/prefixA**",
"Grantee": {
    "GranteeType": "IAM",
    "GranteeIdentifier": "arn:aws:iam::111122223333:role/role-name"
 }
}
```

## Verwenden der REST-API
<a name="access-grants-credentials-rest-api"></a>

Informationen zur Amazon S3 S3-REST-API-Unterstützung für die Anforderung temporärer Anmeldeinformationen von S3 Access Grants finden Sie [GetDataAccess](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetDataAccess.html)in der *Amazon Simple Storage Service API-Referenz*.

## Unter Verwendung der AWS SDKs
<a name="access-grants-credentials-using-sdk"></a>

Dieser Abschnitt enthält ein Beispiel dafür, wie Stipendiaten temporäre Anmeldeinformationen von S3 Access Grants anfordern, indem sie den AWS SDKs verwenden.

------
#### [ Java ]

Das folgende Codebeispiel gibt die temporären Anmeldeinformationen zurück, die der Gewährungsempfänger für den Zugriff auf Ihre S3-Daten verwendet. Wenn Sie dieses Codebeispiel verwenden möchten, ersetzen Sie `user input placeholders` durch eigene Daten.

**Example Abrufen temporärer Anmeldeinformationen**  
Anforderung:  

```
public void getDataAccess() {
GetDataAccessRequest getDataAccessRequest = GetDataAccessRequest.builder()
.accountId("111122223333")
.permission(Permission.READ)
.privilege(Privilege.MINIMAL)
.target("s3://amzn-s3-demo-bucket/prefixA*")
.build();
GetDataAccessResponse getDataAccessResponse = s3Control.getDataAccess(getDataAccessRequest);
LOGGER.info("GetDataAccessResponse: " + getDataAccessResponse);
}
```
Antwort:  

```
GetDataAccessResponse(
Credentials=Credentials(
AccessKeyId="Example-access-key-id",
SecretAccessKey="Example-secret-access-key",
SessionToken="Example-session-token",
Expiration=2023-06-07T06:55:24Z
))
```

------