Bagikan melalui


Model identitas

Azure Communication Services adalah layanan agnostik identitas, yang menawarkan beberapa manfaat:

  • Gunakan kembali identitas yang ada dari sistem manajemen identitas Anda dan cukup petakan dengan identitas Azure Communication Services.
  • Memberikan fleksibilitas integrasi karena model agnostik identitas berfungsi dengan baik dengan sistem identitas Anda yang ada.
  • Anda dapat Menyimpan data pengguna, seperti namanya, privat karena Anda tidak perlu menduplikasinya di Azure Communication Services.

Model identitas Azure Communication Services berfungsi dengan dua konsep utama.

Identitas/pemetaan pengguna

Mengidentifikasi pengguna secara unik melalui pengidentifikasi pengguna, yang dihasilkan oleh Azure Communication Services saat pengguna dibuat. Pengidentifikasi eksternal seperti nomor telepon, pengguna, perangkat, aplikasi, dan GUID tidak dapat digunakan untuk identitas di Azure Communication Services. Anda dapat membuat identitas pengguna Azure Communication Service secara gratis. Biaya hanya dikenakan ketika pengguna menggunakan modalitas komunikasi seperti obrolan atau panggilan. Identitas pengguna Anda dapat dipetakan ke Identitas pengguna Azure Communication Services dalam konfigurasi 1:1, 1:N, N:1, N:N. Pengguna dapat berpartisipasi dalam beberapa sesi komunikasi, menggunakan beberapa perangkat, secara bersamaan. Pemetaan antara identitas pengguna Azure Communication Services dan identitas pengguna privat pelanggan disimpan dan dikelola oleh pelanggan. Misalnya, pelanggan dapat menambahkan CommunicationServicesId kolom di tabel pengguna mereka untuk menyimpan identitas Azure Communication Services terkait.

Token akses

Setelah identitas pengguna dibuat, pengguna diberikan kemampuan untuk berpartisipasi dalam komunikasi menggunakan obrolan atau panggilan, menggunakan token akses. Misalnya, hanya pengguna dengan token obrolan yang dapat berpartisipasi dalam obrolan dan pengguna dengan token VoIP yang dapat berpartisipasi dalam panggilan VoIP. Pengguna dapat memiliki beberapa token secara bersamaan. Azure Communication Services mendukung beberapa jenis token untuk memperhitungkan pengguna yang memerlukan akses penuh vs akses terbatas. Token akses memiliki properti berikut.

Properti Deskripsi
Identitas Mengidentifikasi token secara unik
kedaluwarsa Token akses berlaku untuk jangka waktu antara 1 dan 24 jam. Setelah kedaluwarsa, token akses menjadi tidak valid dan tidak dapat digunakan untuk mengakses primitif apa pun. Untuk menghasilkan token dengan validitas kustom, tentukan periode validitas yang diinginkan saat menghasilkan token. Jika tidak ada validitas kustom yang ditentukan, token akan berlaku selama 24 jam. Sebaiknya gunakan token seumur hidup singkat untuk rapat satu kali dan token seumur hidup yang lebih lama untuk agen yang menggunakan aplikasi untuk jangka waktu yang lebih lama
Cakupan Parameter cakupan mendefinisikan sekumpulan primitif yang tidak ada harganya (Chat/VoIP) yang dapat digunakan.

Token akses adalah JSON Web Token (JWT) dan memiliki perlindungan integritas. Artinya, klaimnya tidak dapat diubah setelah diterbitkan. Jadi, perubahan manual properti seperti identitas, kedaluwarsa, atau cakupan akan membuat token akses tidak valid. Jika primitif digunakan dengan token yang tidak valid, maka akses akan ditolak ke primitif. Azure Communication Services mendukung cakupan berikut untuk token akses.

Cakupan token obrolan

Tiga jenis cakupan token obrolan didukung. Izin untuk setiap token dijelaskan di bawah ini.

  • Chat
  • chat.join
  • chat.join.limited
Cakupan kapabilitas / Token Chat chat.join chat.join.limited
Membuat utas obrolan Y N N
Memperbarui utas obrolan dengan ID Y N N
Menghapus utas obrolan dengan ID Y N N
Menambahkan peserta ke utas obrolan Y Y N
Menghapus peserta dari utas obrolan Y Y N
Mendapatkan utas obrolan Y Y Y
Mendapatkan utas obrolan dengan ID Y Y Y
Dapatkan ReadReceipt Y Y Y
Membuat ReadReceipt Y Y Y
Membuat pesan untuk utas obrolan dengan ID Y Y Y
Mendapatkan pesan dengan ID pesan Y Y Y
Memperbarui pesan Anda sendiri dengan ID pesan Y Y Y
Menghapus pesan Anda sendiri dengan ID pesan Y Y Y
Kirim indikator pengetikan Y Y Y
Mendapatkan peserta untuk ID utas Y Y Y

Cakupan token VoIP

Dua jenis cakupan token VoIP didukung. Izin untuk setiap token dijelaskan di bawah ini.

  • Voip
  • voip.join
Cakupan kapabilitas / Token Voip voip.join
Memulai panggilan VoIP Y N
Mulai panggilan VoIP di Virtual Rooms, ketika pengguna sudah diundang ke Ruangan Y Y
Bergabung dengan panggilan VoIP InProgress Y Y
Bergabunglah dengan panggilan InProgress VoIP di Virtual Rooms, ketika pengguna sudah diundang ke Ruangan Y Y
Semua operasi dalam panggilan lainnya seperti mematikan suara/menyalakan suara, berbagi layar, dll. Y Y
Semua operasi dalam panggilan lainnya seperti mematikan suara/menyalakan suara, berbagi layar, dll. di Virtual Rooms Ditentukan oleh peran pengguna Ditentukan oleh peran pengguna

Mencabut atau memperbarui token akses

  • Pustaka Identitas Azure Communication Services dapat digunakan untuk mencabut token akses sebelum waktu kedaluwarsanya. Pencabutan token tidak berlangsung segera. Dibutuhkan waktu hingga 15 menit untuk disebarluaskan.
  • Penghapusan identitas, sumber daya, atau langganan mencabut semua token akses.
  • Jika Anda ingin menghapus kemampuan pengguna untuk mengakses fungsionalitas tertentu, cabut semua token akses. Kemudian terbitkan token akses baru yang memiliki seperangkat ruang cakupan yang lebih terbatas.
  • Rotasi kunci akses mencabut semua token akses aktif yang dibuat dengan menggunakan kunci akses sebelumnya. Dalam hal ini semua identitas kehilangan akses ke Azure Communication Services, dan mereka harus mengeluarkan token akses baru.

Pertimbangan

  • Kami merekomendasikan penerbitan token akses dilakukan di layanan sisi server Anda dan bukan di aplikasi klien. Alasannya adalah bahwa penerbitan memerlukan kunci akses atau autentikasi Microsoft Entra. Berbagi rahasia dengan aplikasi klien tidak disarankan karena alasan keamanan.
  • Aplikasi klien harus menggunakan titik akhir layanan tepercaya yang dapat mengautentikasi klien. Titik akhir harus menerbitkan token akses atas namanya. Untuk informasi selanjutnya, lihat Arsitektur Server dan klien.
  • Jika Anda meng-cache token akses ke penyimpanan pendukung, sebaiknya gunakan enkripsi. Token akses adalah data sensitif. Token akses dapat digunakan untuk aktivitas berbahaya jika tidak dilindungi. Seseorang yang memiliki token akses dapat memulai SDK dan mengakses API. API yang dapat diakses hanya dibatasi berdasarkan cakupan yang ditawarkan token akses.
  • Kami merekomendasikan penerbitan token akses yang hanya memiliki cakupan yang diperlukan.

Langkah berikutnya