

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.

# Anmeldeinformationen für die Sitzung einrichten
<a name="session-credentials-setup"></a>

## Schritt 1: Erstellen einer IAM-Rolle
<a name="session-credentials-step1"></a>

Erstellen Sie in Ihrem Konto eine IAM-Rolle, deren Name mit beginnt, `GameLiftStreams-` und eine Vertrauensrichtlinie, die es dem `gameliftstreams.amazonaws.com` Service Principal ermöglicht, diese Rolle zu übernehmen.

**Wichtig**  
Der Rollenname muss mit `GameLiftStreams-` anfangen. Sie können eine Rolle nach der Erstellung nicht umbenennen. Wenn Sie eine Rolle ohne dieses Präfix verwenden, wird ein Fehler `StartStreamSession` zurückgegeben. Weitere Informationen finden Sie unter [Problembehandlung bei Anmeldeinformationen für Sitzungen](session-credentials-troubleshooting.md).

Wir empfehlen, Ihrer Vertrauensrichtlinie weitere `aws:SourceArn` Bedingungen hinzuzufügen`aws:SourceAccount`. Diese Bedingungen verwenden Ihre AWS-Konto-ID und schränken ein, welche Sitzungen diese Rolle übernehmen können. Weitere Informationen zum Schutz vor dienstübergreifendem Identitätswechsel finden Sie unter [ Cross-service Confused Deputy Prevention ](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) im * IAM-Benutzerhandbuch. *

```
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Principal": { "Service": "gameliftstreams.amazonaws.com" },
    "Action": "sts:AssumeRole",
    "Condition": {
      "StringEquals": {
        "aws:SourceAccount": "{{123456789012}}"
      },
      "ArnLike": {
        "aws:SourceArn": "arn:aws:gameliftstreams:*:{{123456789012}}:streamsession/*"
      }
    }
  }]
}
```

Ersetzen Sie beide Vorkommen von durch Ihre ID. {{123456789012}} AWS-Konto 

**Anmerkung**  
[Service-linked Rollen ](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html) (identifiziert durch ARNs, die enthalten`/aws-service-role/`) können mit dieser Funktion nicht verwendet werden. Erstellen Sie stattdessen eine IAM-Rolle.

## Schritt 2: Fügen Sie der Rolle Berechtigungen hinzu
<a name="session-credentials-step2"></a>

Hängen Sie der Rolle IAM-Richtlinien an, die nur die Berechtigungen gewähren, die Ihre Anwendung benötigt. Eine Anleitung zur Festlegung des Gültigkeitsbereichs von Berechtigungen finden Sie [ im ](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) * IAM-Benutzerhandbuch unter Gewähren der geringsten Rechte. *

Wenn Ihre Anwendung beispielsweise aus einem Amazon S3-Bucket lesen muss:

```
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Action": [
      "s3:GetObject",
      "s3:ListBucket"
    ],
    "Resource": [
      "arn:aws:s3:::{{my-game-assets-bucket}}",
      "arn:aws:s3:::{{my-game-assets-bucket}}/*"
    ]
  }]
}
```

## Schritt 3: Erteilen Sie iam: Erlaubnis PassRole
<a name="session-credentials-step3"></a>

Der IAM-Principal, der anruft, `StartStreamSession` muss die Erlaubnis haben, die Rolle an Amazon GameLift Streams zu übergeben. Fügen Sie der IAM-Richtlinie des Principals die folgende Anweisung hinzu. Weitere Informationen finden Sie im * IAM-Benutzerhandbuch unter [ Gewähren von Benutzerberechtigungen zum Übergeben einer Rolle an einen AWS Dienst](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html). *

```
{
  "Effect": "Allow",
  "Action": "iam:PassRole",
  "Resource": "arn:aws:iam::{{123456789012}}:role/GameLiftStreams-{{MyAppRole}}",
  "Condition": {
    "StringEquals": {
      "iam:PassedToService": "gameliftstreams.amazonaws.com"
    }
  }
}
```

## Schritt 4: Starten Sie eine Stream-Sitzung mit der Rolle
<a name="session-credentials-step4"></a>

Übergeben Sie den Rollen-ARN, wenn Sie Folgendes aufrufen [ StartStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_StartStreamSession.html):

```
aws gameliftstreams start-stream-session \
    --stream-group-identifier {{sg-1AB2C3De4}} \
    --application-identifier {{a-9ZY8X7Wv6}} \
    --protocol WebRTC \
    --signal-request "{{[webrtc-ice-offer json string]}}" \
    --user-id {{myUserId}} \
    --role-arn arn:aws:iam::{{123456789012}}:role/GameLiftStreams-{{MyAppRole}}
```

Wenn die Rolle nicht übernommen werden kann (z. B. weil die Vertrauensrichtlinie falsch konfiguriert ist), wird ein `StartStreamSession` `ValidationException` zurückgegeben. Die Sitzung wird nicht gestartet. Weitere Informationen finden Sie unter [Problembehandlung bei Anmeldeinformationen für Sitzungen](session-credentials-troubleshooting.md).