本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
從後端服務進行 SDK 呼叫以進行 Amazon Chime SDK 訊息
建立使用者以代表您的後端服務後,您可以建立頻道、傳送訊息至該頻道,以及從該頻道讀取訊息。
執行下列 CLI 命令來建立公有頻道。
aws chime-sdk-messaging create-channel \ --chime-bearer "app_instance_user_arn" \ --app-instance-arn "app_instance_arn" \ --name "firstChannel"
命令會產生此格式的 ARN: arn:aws:chime:region:aws_account_id:app-instance/app_instance_id/channel/channel_id.
IAM 授權如何用於後端服務
在上一節的 CLI 命令中,記下 chime-bearer 參數。它可識別建立或與管道和訊息等資源互動的使用者。幾乎所有 Amazon Chime SDK 訊息 APIs都採用 chime-bearer 參數,但 APIs API 只能由開發人員呼叫,例如 CreateAppInstance。
Amazon Chime SDK 訊息 APIs 的 IAM 許可需要app-instance-user-arn 符合 chime-bearer 參數的 。根據 API,可能需要其他 ARNs,通常是頻道 ARNs。對於如上述範例的後端服務,這會導致類似下列範例的 IAM 政策:
請注意 Resource區段中的 AppInstanceUser ARN 和頻道 ARN。此 IAM 政策範例授予後端服務許可,以 ID 為「back-end-worker」的使用者身分進行 API 呼叫。如果您希望後端服務能夠呼叫使用您應用程式的人員,請將 變更為 app_instance_user_arn arn:aws:chime:。region:aws_account_id:app-instance/app_instance_id/user/*
了解隱含 API 授權
除了 IAM 政策之外,Amazon Chime SDK 訊息 APIs 還具有隱含許可。例如, AppInstanceUser只能在使用者所屬的頻道中傳送訊息或列出頻道成員資格。其中一個例外是提升為 AppInstanceUser的 AppInstanceAdmin。根據預設,管理員具有應用程式中所有頻道的許可。對於大多數使用案例,對於包含重要商業邏輯的後端服務,您只需要此項目。
下列 CLI 命令會將後端使用者提升為 管理員。
aws chime-sdk-identity create-app-instance-admin \ --app-instance-admin-arn "app_instance_user_arn" \ --app-instance-arn "app_instance_arn"
傳送和列出頻道訊息
下列 CLI 命令會傳送頻道訊息。
aws chime-sdk-messaging send-channel-message \ --chime-bearer "app_instance_user_arn" \ --channel-arn "channel_arn" \ --content "hello world" \ --type STANDARD \ --persistence PERSISTENT
下列 CLI 命令會依反向時間順序列出頻道訊息。
-
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"