Ausführen von SDK-Aufrufen von einem Backend-Service - Amazon Chime SDK

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.

Ausführen von SDK-Aufrufen von einem Backend-Service

Sobald Sie einen Benutzer erstellt haben, der Ihre Backend-Services darstellt, erstellen Sie einen Kanal, senden Nachrichten an diesen Kanal und lesen Nachrichten aus diesem Kanal.

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

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

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

Funktionsweise der IAM-Autorisierung für Backend-Services

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

Die IAM-Berechtigungen für Amazon-Chime-SDK-Messaging-APIs erfordern eine app-instance-user-arn , die dem -chime-bearerParameter entspricht. Zusätzliche ARNs – in der Regel Kanal-ARNs – können basierend auf der API erforderlich sein. Für Backend-Services wie das obige Beispiel führt dies zu IAM-Richtlinien wie dem folgenden Beispiel:

{ "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:region:aws_account_id:app-instance/app_instance_id/user/back-end-worker", "arn:aws:chime:region:aws_account_id:app-instance/app_instance_id/channel/*" ] }

Notieren Sie sich den AppInstanceUser ARN und den Kanal-ARN im Resource Abschnitt . Dieses IAM-Richtlinienbeispiel erteilt dem Backend-Service die Berechtigung, als Benutzer mit der ID „“ API-Aufrufe durchzuführenback-end-worker. Wenn Sie möchten, dass Ihr Back-End-Service Anrufe für die Personen tätigen kann, die Ihre App verwenden, ändern app_instance_user_arn Sie in arn:aws:chime:region:aws_account_id:app-instance/app_instance_id/user/*.

Grundlegendes zur impliziten API-Autorisierung

Zusätzlich zu den IAM-Richtlinien verfügen die Messaging-APIs des Amazon Chime SDK über implizite Berechtigungen. Beispielsweise AppInstanceUser kann ein nur eine Nachricht senden oder eine Kanalmitgliedschaft in Kanälen auflisten, zu denen der Benutzer gehört. Eine Ausnahme davon ist ein AppInstanceUser, der zu hochgestuft wurdeAppInstanceAdmin. Standardmäßig verfügen Administratoren über Berechtigungen für alle Kanäle in Ihrer App. Für die meisten Anwendungsfälle benötigen Sie dies nur für Backend-Services, die erhebliche Geschäftslogik enthalten.

Der folgende CLI-Befehl stuft einen Backend-Benutzer zu einem Administrator hoch.

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

Senden und Auflisten von Kanalnachrichten

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"