Bagaimana mengizinkan siapa pun membuat rapat Teams melalui MsGraph

Saya mencoba mengembangkan aplikasi web yang terhubung ke aplikasi AD Azure kami yang memungkinkan siapa pun yang memiliki kode (ditentukan dalam aplikasi web kami sendiri) untuk memulai rapat Teams melalui Ms Graph API.

Alurnya sederhana sebagai berikut:

  1. Gunakan kode host untuk membuat ruang Ms Teams
  2. Simpan informasi ruangan yang dibuat di database aplikasi web kami
  3. Kirim pengguna menggunakan kode tamu ke ruang Teams yang benar

Pada awalnya saya mencoba menggunakan beta Ms Graph API untuk menggunakan jenis izin 'aplikasi' di mana host (pada langkah 1) akan membuat ruang pertemuan di domain AD Azure kami. Namun ini berfungsi, merujuk uuid pengguna di luar domain AD Azure kami tidak diizinkan atau sepertinya tidak berfungsi.

Saya kemudian menulis ulang aplikasi web untuk menggunakan jenis izin 'yang didelegasikan'. Pengguna yang menggunakan kode host pada langkah 1 kemudian dialihkan ke Microsoft untuk masuk, dikembalikan ke aplikasi web kita dengan token autentikasi yang benar yang dapat kita gunakan dengan Ms Graph untuk membuat ruang pertemuan atas nama pengguna yang masuk.

Sejauh yang saya tahu, saya mengonfigurasi izin yang sesuai untuk 'OnlineMeetings.ReadWrite' (atau OnlineMeetings.ReadWrite.all, bergantung pada jenis izin). Persetujuan admin telah dilakukan, saya bahkan telah menyetel jenis autentikasi ke 'Akun di direktori organisasi mana pun (Direktori Azure AD mana pun - Multipenyewa)' tetapi tidak berhasil.

Kedua solusi ini tampaknya sangat terbatas hanya pada ruang/domain AD Azure kami sendiri yang berarti kami tidak dapat menawarkan aplikasi web yang secara otomatis membuat ruang pertemuan atas nama pengguna dan menghubungkan pengguna ke ruang pertemuan yang sama.

Apakah ada cara untuk mengizinkan hal tersebut di atas?


person Kozie    schedule 27.11.2020    source sumber


Jawaban (1)


Untuk kebutuhan Anda, saya merangkum dua situasi seperti di bawah ini untuk referensi Anda:

Ada dua penyewa (penyewa A dan penyewa B), aplikasi terdaftar Anda ada di penyewa A dan ditetapkan sebagai Accounts in any organizational directory (Any Azure AD directory - Multitenant).

1. Jika Anda ingin pengguna di AD lain membuat ruang pertemuan di penyewa A, hal itu tidak dapat diterapkan.

2. Jika Anda ingin pengguna di AD lain membuat ruang pertemuan di penyewa saat ini (misalnya penyewa B). Anda dapat meminta token dengan id penyewa B di titik akhir token permintaan (seperti https://login.microsoftonline.com/{id of tenant B}/oauth2/v2.0/token. Dan di badan permintaan, Anda harus menggunakan id klien di penyewa A aplikasi terdaftar. Kita cukup menerapkan langkah-langkahnya dengan kode autentikasi mengalir dan akan muncul jendela untuk meminta login, Anda perlu menggunakan akun admin (penyewa B) untuk melakukan login pertama kali (untuk mengizinkan operasi ini).

person Hury Shen    schedule 30.11.2020