

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.

# SDK-Aufrufe von einem Back-End-Service für Amazon Chime SDK-Nachrichten tätigen
<a name="call-from-backend"></a>

Sobald Sie einen Benutzer erstellt haben, der Ihre Back-End-Dienste repräsentiert, erstellen Sie einen Kanal, senden Nachrichten an diesen Kanal und lesen Nachrichten von diesem Kanal.

Führen Sie den folgenden CLI-Befehl aus, um einen öffentlichen Channel zu erstellen.

```
aws chime-sdk-messaging create-channel \
    --chime-bearer "{{app_instance_user_arn}}" \
    --app-instance-arn "{{app_instance_arn}}" \
    --name "firstChannel"
```

Der Befehl erzeugt einen ARN in diesem Format: `arn:aws:chime:{{region}}:{{aws_account_id}}:app-instance/{{app_instance_id}}/channel/{{channel_id}}.`

**Topics**
+ [So funktioniert die IAM-Autorisierung für Back-End-Dienste](#how-iam-works)
+ [Grundlegendes zur impliziten API-Autorisierung](#api-implicit-auth)
+ [Kanalnachrichten senden und auflisten](#send-list-msgs)

## So funktioniert die IAM-Autorisierung für Back-End-Dienste
<a name="how-iam-works"></a>

Notieren Sie sich den `chime-bearer` Parameter im CLI-Befehl aus dem vorherigen Abschnitt. Es identifiziert den Benutzer, der Ressourcen wie Kanäle und Nachrichten erstellt oder mit ihnen interagiert. Fast alle Amazon Chime SDK-Messaging-APIs verwenden `chime-bearer` als Parameter, mit Ausnahme von APIs, die nur von Entwicklern aufgerufen werden sollen, wie `CreateAppInstance` z.

Die IAM-Berechtigungen für Amazon Chime SDK-Messaging-APIs erfordern eine`app-instance-user-arn `, die dem `chime-bearer` Parameter entspricht. Je nach API können zusätzliche ARNs — in der Regel Channel-ARNs — erforderlich sein. Bei Back-End-Diensten wie dem obigen Beispiel führt dies zu IAM-Richtlinien wie dem folgenden Beispiel:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "chime:SendChannelMessage",
            "chime:ListChannelMessages",
            "chime:CreateChannelMembership",
            "chime:ListChannelMemberships",
            "chime:DeleteChannelMembership",
            "chime:CreateChannel",
            "chime:ListChannels",
            "chime:DeleteChannel"
        ],
        "Resource": [
            "arn:aws:chime:{{us-east-1}}:{{123456789012}}:app-instance/{{app_instance_id}}/user/back-end-worker",
            "arn:aws:chime:{{us-east-1}}:{{123456789012}}:app-instance/{{app_instance_id}}/channel/*"
        ]
    }
}
```

------

Notieren Sie sich den `AppInstanceUser` ARN und den Kanal-ARN im `Resource` Abschnitt. In diesem Beispiel für eine IAM-Richtlinie wird dem Back-End-Dienst die Berechtigung erteilt, API-Aufrufe als Benutzer mit der ID „Back-End-Worker“ durchzuführen. Wenn Sie möchten, dass Ihr Back-End-Dienst Anrufe für die Personen tätigen kann, die Ihre App verwenden, ändern Sie den Wert in. `app_instance_user_arn` `arn:aws:chime:{{region}}:{{aws_account_id}}:app-instance/{{app_instance_id}}/user/*`

## Grundlegendes zur impliziten API-Autorisierung
<a name="api-implicit-auth"></a>

Zusätzlich zu den IAM-Richtlinien verfügen die Amazon Chime SDK-Messaging-APIs über implizite Berechtigungen. Beispielsweise `AppInstanceUser` kann ein nur in Kanälen, denen der Benutzer angehört, eine Nachricht senden oder eine Kanalmitgliedschaft auflisten. Eine Ausnahme bilden Personen`AppInstanceUser`, zu denen sie befördert wurden`AppInstanceAdmin`. Standardmäßig haben Admins Berechtigungen für alle Kanäle in deiner App. In den meisten Anwendungsfällen benötigen Sie dies nur für Back-End-Dienste, die eine umfangreiche Geschäftslogik enthalten.

Der folgende CLI-Befehl ernennt einen Back-End-Benutzer zu einem Administrator.

```
aws chime-sdk-identity create-app-instance-admin \
    --app-instance-admin-arn "{{app_instance_user_arn}}" \
    --app-instance-arn "{{app_instance_arn}}"
```

## Kanalnachrichten senden und auflisten
<a name="send-list-msgs"></a>

Der folgende CLI-Befehl sendet Kanalnachrichten.

```
aws chime-sdk-messaging send-channel-message \
    --chime-bearer "{{app_instance_user_arn}}" \
    --channel-arn "{{channel_arn}}" \
    --content "hello world" \
    --type STANDARD \
    --persistence PERSISTENT
```

Die folgenden CLI-Befehle listen Kanalnachrichten in umgekehrter chronologischer Reihenfolge auf.
+ `aws chime list-channel-messages`
+ `aws chime-sdk-messaging list-channel-messages`

```
aws chime-sdk-messaging list-channel-messages \
    --chime-bearer "{{app_instance_user_arn}}" \
    --channel-arn "{{channel_arn}}"
```