Melakukan panggilan SDK dari layanan back-end - Amazon Chime SDK

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Melakukan panggilan SDK dari layanan back-end

Setelah Anda membuat pengguna untuk mewakili layanan back-end Anda, Anda membuat saluran, mengirim pesan ke saluran tersebut, dan membaca pesan dari saluran tersebut.

Jalankan perintah CLI berikut untuk membuat saluran publik.

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

Perintah menghasilkan ARN dalam format ini: arn:aws:chime:region:aws_account_id:app-instance/app_instance_id/channel/channel_id.

Bagaimana otorisasi IAM bekerja untuk layanan back-end

Dalam perintah CLI dari bagian sebelumnya, perhatikan parameternyachime-bearer. Ini mengidentifikasi pengguna yang membuat atau berinteraksi dengan sumber daya seperti saluran dan pesan. Hampir semua API perpesanan Amazon Chime SDK diambil chime-bearer sebagai parameter, kecuali API dimaksudkan untuk dipanggil hanya oleh pengembang, seperti. CreateAppInstance

Izin IAM untuk API perpesanan Amazon Chime SDK memerlukan app-instance-user-arn yang cocok dengan parameter. chime-bearer ARN tambahan—biasanya saluran ARN—mungkin diperlukan berdasarkan API. Untuk layanan back-end seperti contoh di atas, ini mengarah ke kebijakan IAM seperti contoh berikut:

{ "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/*" ] }

Perhatikan AppInstanceUser ARN dan saluran ARN di bagian ini. Resource Contoh kebijakan IAM ini memberikan izin layanan back-end untuk melakukan panggilan API sebagai pengguna dengan ID ".” back-end-worker Jika Anda ingin layanan back-end Anda dapat melakukan panggilan untuk orang-orang yang menggunakan aplikasi Anda, ubah keapp_instance_user_arn. arn:aws:chime:region:aws_account_id:app-instance/app_instance_id/user/*

Memahami otorisasi API implisit

Selain kebijakan IAM, API perpesanan Amazon Chime SDK memiliki izin implisit. Misalnya, hanya AppInstanceUser dapat mengirim pesan atau mencantumkan keanggotaan saluran di saluran tempat pengguna berada. Satu pengecualian untuk ini adalah AppInstanceUser orang yang dipromosikanAppInstanceAdmin. Secara default, admin memiliki izin untuk semua saluran di aplikasi Anda. Untuk sebagian besar kasus penggunaan, Anda hanya memerlukan ini untuk layanan back-end yang berisi logika bisnis yang signifikan.

Perintah CLI berikut mempromosikan pengguna back-end ke admin.

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

Mengirim dan mencantumkan pesan saluran

Perintah CLI berikut mengirimkan pesan saluran.

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

Perintah CLI berikut mencantumkan pesan saluran dalam urutan kronologis terbalik.

  • 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"