Kegagalan otentikasi / otorisasi koneksi API office365 karena koneksi lintas api di aplikasi logika

Aug 20 2020

Saya menghadapi masalah otentikasi ulang dan masalah otorisasi ke dalam penerapan aplikasi logika menggunakan template ARM. Saya telah menemukan beberapa solusi tetapi tidak ada yang berhasil untuk saya. Sebenarnya kebutuhan saya sedikit berbeda, yang saya tulis di bawah ini.

pengantar

Kami sedang bekerja untuk klien kami dan klien kami tidak memiliki langganan lengkap office365. Kami telah memperkenalkan solusi kepada klien saya dengan aplikasi logika.

Kami memiliki beberapa aplikasi logika di mana kami menggunakan konektor office365 untuk pemberitahuan dan mengunggah data di SharePoint, konektor ini diautentikasi dengan kredensial organisasi saya sementara seluruh aplikasi logika ini diterapkan di Azure Cloud klien saya. Singkatnya, aplikasi logika ini adalah aplikasi logika hybrid yang berarti aplikasi logika memiliki konektor office365 dari perusahaan saya dan aplikasi logika ini digunakan di lingkungan cloud Azure klien.

Isu

Kami menghadapi masalah setiap kali kami menerapkan templat lengan aplikasi logika, aplikasi logika meminta otentikasi untuk langkah-langkah office365.

Saya mengikuti dokumentasi dan solusi berikut tetapi tidak berhasil untuk saya karena solusi hybrid.

  • https://www.bruttin.com/2017/06/13/deploy-logic-app-with-arm.html
  • https://social.msdn.microsoft.com/Forums/en-US/7a9e8ebe-3438-4916-8041-2058fcdc1e31/arm-resource-manager-template-connection-parameters-for-oauth-googlesheet-managed-api?forum=azurelogicapps
  • https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-azure-resource-manager-templates-overview#authenticate-connections
  • Aplikasi Azure Logic dengan Koneksi SharePoint
  • Template ARM koneksi Office 365 untuk aplikasi logika
  • https://blogs.msdn.microsoft.com/logicapps/2016/02/23/deploying-in-the-logic-apps-preview-refresh/
  • http://blog.davidebbo.com/2015/01/azure-resource-manager-client.html
  • Azure Logic App - Pembuatan koneksi Office365 dengan templat ARM
  • https://github.com/logicappsio/LogicAppConnectionAuth (Untuk memberi otorisasi ke koneksi, tetapi memberi otorisasi jika dan hanya jika itu cloud internal atau eksternal)
  • Cara menerapkan Aplikasi Logika dengan Konektor o365 dalam template ARM

Setelah hit dan coba solusi di atas, saya mengetahui semua solusi benar tetapi tidak akan berfungsi dalam kasus saya karena saya menggunakan koneksi hybrid dalam aplikasi logika. Ada beberapa pertanyaan juga

  1. Saat MFA diaktifkan. apakah saya memerlukan autentikasi manual di aplikasi logika setiap kali setelah penerapan?

  2. Ketika saya menerapkan template lengan melalui DevOps dan melakukan eksekusi aplikasi logika, koneksi mengatakan tidak sah dan memberi saya kesalahan berikut.

    { "error_description": "Exception of type 'Microsoft.IdentityModel.Tokens.AudienceUriValidationFailedException' was thrown." }

Beri tahu saya jika ada yang memiliki solusi untuk masalah ini.

Jawaban

1 JayaChatterjee-MSFT Aug 26 2020 at 17:53

Jika eksekusi gagal untuk konektor online titik berbagi, dalam skenario PowerAutomate atau LogicApps, koneksi dibuat sebelum dimungkinkan untuk mengetahui pengguna penyewa apa yang akan mengakses sehingga satu-satunya opsi default ke penyewa rumah pengguna seperti hari ini. Secara default, token yang dihasilkan untuk autentikasi akan sesuai dengan situs root pengguna - audience dan tenantId. Nanti, konektor dapat menukar token untuk audiens yang berbeda (untuk skenario X-Geo) tetapi tenantId akan tetap sama. Begitulah cara kerjanya hari ini dan tidak ada solusi untuk itu. Sampai sekarang, tidak ada cara untuk mengakses penyewa non-rumah dari PowerAutomate / LogicApps. Saat ini kami sedang membahasnya dengan tim terkait untuk memeriksa apakah kami dapat menambahkannya ke dalam dokumen