Mengautentikasi akses dan koneksi ke sumber daya Azure dengan identitas terkelola di Azure Logic Apps

Berlaku untuk: Azure Logic Apps (Konsumsi + Standar)

Jika Anda ingin menghindari penyediaan, penyimpanan, dan pengelolaan kredensial, rahasia, atau token Microsoft Entra, Anda dapat menggunakan identitas terkelola untuk mengautentikasi akses atau koneksi dari alur kerja aplikasi logika Anda ke sumber daya yang dilindungi Microsoft Entra. Di Azure Logic Apps, beberapa operasi konektor mendukung penggunaan identitas terkelola saat Anda harus mengautentikasi akses ke sumber daya yang dilindungi oleh ID Microsoft Entra. Azure mengelola identitas ini dan membantu menjaga keamanan informasi autentikasi sehingga Anda tidak perlu mengelola informasi sensitif ini. Untuk informasi selengkapnya, lihat Apa yang dimaksud dengan identitas terkelola untuk sumber daya Azure?

Azure Logic Apps mendukung jenis identitas terkelola berikut:

Daftar berikut ini menjelaskan beberapa perbedaan antara jenis identitas terkelola ini:

  • Sumber daya aplikasi yang logika hanya dapat mengaktifkan dan menggunakan satu identitas unik yang ditetapkan sistem.

  • Sumber daya aplikasi yang logika dapat berbagi identitas yang ditetapkan pengguna yang sama di sekelompok sumber daya aplikasi logika lainnya.

Panduan ini memperlihatkan cara menyelesaikan tugas berikut:

  • Aktifkan dan siapkan identitas yang ditetapkan sistem untuk sumber daya aplikasi logika Anda. Panduan ini memberikan contoh yang menunjukkan cara menggunakan identitas untuk autentikasi.

  • Membuat dan menyiapkan identitas yang ditetapkan pengguna. Panduan ini menunjukkan cara membuat identitas ini menggunakan portal Azure atau templat Azure Resource Manager (templat ARM) dan cara menggunakan identitas untuk autentikasi. Untuk Azure PowerShell, Azure CLI, dan Azure REST API, lihat dokumentasi berikut:

Alat Dokumentasi
Azure PowerShell Membuat identitas yang ditetapkan pengguna
Azure CLI Membuat identitas yang ditetapkan pengguna
REST API Azure Membuat identitas yang ditetapkan pengguna

Prasyarat

  • Akun dan langganan Azure. Jika Anda tidak memiliki langganan, daftar untuk mendapatkan akun Azure secara gratis. Identitas terkelola dan sumber daya Azure target tempat Anda memerlukan akses harus menggunakan langganan Azure yang sama.

  • Sumber daya Azure target yang ingin Anda akses. Pada sumber daya ini, Anda harus menambahkan peran yang diperlukan agar identitas terkelola dapat mengakses sumber daya tersebut atas nama aplikasi logika atau koneksi Anda. Untuk menambahkan peran ke identitas terkelola, Anda memerlukan izin administrator Microsoft Entra yang dapat menetapkan peran ke identitas di penyewa Microsoft Entra yang sesuai.

  • Sumber daya dan alur kerja aplikasi logika tempat Anda ingin menggunakan pemicu atau tindakan yang mendukung identitas terkelola.

Perbedaan identitas terkelola antara aplikasi logika Konsumsi dan Standar

Berdasarkan jenis sumber daya aplikasi logika Anda, Anda dapat mengaktifkan identitas yang ditetapkan sistem, identitas yang ditetapkan pengguna, atau keduanya secara bersamaan:

Aplikasi logika Lingkungan Dukungan identitas terkelola
Consumption - Azure Logic Apps multipenyewa

- Lingkungan layanan integrasi (ISE)
- Anda dapat mengaktifkan identitas yang ditetapkan sistem atau identitas yang ditetapkan pengguna, tetapi tidak keduanya di aplikasi logika Anda.

- Anda dapat menggunakan identitas terkelola di tingkat sumber daya aplikasi logika dan di tingkat koneksi.

- Jika Anda membuat dan mengaktifkan identitas yang ditetapkan pengguna, aplikasi logika Anda hanya dapat memiliki satu identitas yang ditetapkan pengguna sekaligus.
Standard - Azure Logic Apps penyewa tunggal

- App Service Environment v3 (ASEv3)

- Logic Apps dengan dukungan Azure Arc
- Anda dapat mengaktifkan identitas yang ditetapkan sistem, yang diaktifkan secara default, dan identitas yang ditetapkan pengguna secara bersamaan. Anda juga dapat menambahkan beberapa identitas yang ditetapkan pengguna ke aplikasi logika Anda. Namun, aplikasi logika Anda hanya dapat menggunakan satu identitas terkelola pada satu waktu.

- Anda dapat menggunakan identitas terkelola di tingkat sumber daya aplikasi logika dan di tingkat koneksi.

Untuk informasi tentang batas identitas terkelola di Azure Logic Apps, lihat Batasan identitas terkelola untuk aplikasi logika. Untuk informasi selengkapnya tentang jenis dan lingkungan sumber daya aplikasi logika Konsumsi dan Standar, lihat dokumentasi berikut ini:

Tempat Anda dapat menggunakan identitas terkelola

Di Azure Logic Apps, hanya operasi konektor bawaan dan terkelola tertentu yang mendukung OAuth dengan ID Microsoft Entra yang dapat menggunakan identitas terkelola untuk autentikasi. Tabel berikut ini hanya menyediakan pilihan sampel. Untuk daftar yang lebih lengkap, lihat dokumentasi berikut ini:

Untuk alur kerja aplikasi logika Konsumsi, tabel berikut ini mencantumkan contoh konektor yang mendukung autentikasi identitas terkelola:

Jenis Konektor Konektor yang didukung
Bawaan - Azure API Management
- Azure App Services
- Azure Functions
- HTTP
- HTTP + Webhook

Catatan: Operasi HTTP dapat mengautentikasi koneksi ke akun Azure Storage di belakang firewall Azure dengan identitas yang ditetapkan sistem. Namun, operasi HTTP tidak mendukung identitas yang ditetapkan pengguna untuk mengautentikasi koneksi yang sama.
Terkelola - Azure App Service
- Azure Automation
- Azure Blob Storage
- Azure Container Instance
- Azure Cosmos DB
- Azure Data Explorer
- Azure Data Factory
- Azure Data Lake
- Azure Digital Twins
- Azure Event Grid
- Azure Event Hubs
- Azure IoT Central V2
- Azure Key Vault
-Log Azure Monitor
- Antrean Azure
- Azure Resource Manager
- Azure Bus Layanan
- Azure Sentinel
- Azure Table Storage
- Azure VM
- SQL Server

Mengaktifkan identitas yang ditetapkan sistem di portal Azure

Pada sumber daya aplikasi logika Konsumsi, Anda harus mengaktifkan identitas yang ditetapkan sistem secara manual.

  1. Di portal Azure, buka sumber daya aplikasi logika Konsumsi Anda.

  2. Pada menu aplikasi logika, di bagian Pengaturan, pilih Identitas.

  3. Pada halaman Identitas, di bawah Sistem yang ditetapkan, pilih Simpan>. Saat Azure meminta Anda untuk mengonfirmasi, pilih Ya.

    Cuplikan layar memperlihatkan portal Azure, aplikasi logika Konsumsi, halaman Identitas, dan tab Yang ditetapkan sistem dengan opsi yang dipilih, Aktif dan Simpan.

    Catatan

    Jika Anda mendapatkan kesalahan bahwa Anda hanya dapat memiliki satu identitas terkelola, aplikasi logika telah dikaitkan dengan identitas yang ditetapkan pengguna. Sebelum dapat menambahkan identitas yang ditetapkan sistem, Anda harus terlebih dahulu menghapus identitas yang ditetapkan pengguna dari sumber daya aplikasi logika Anda.

    Sumber daya aplikasi logika Anda sekarang dapat menggunakan identitas yang ditetapkan sistem. Identitas ini terdaftar dengan ID Microsoft Entra dan diwakili oleh ID objek.

    Cuplikan layar memperlihatkan aplikasi logika Konsumsi, halaman Identitas, dan ID objek untuk identitas yang ditetapkan sistem.

    Properti Nilai Deskripsi
    ID Obyek (utama) <identity-resource-ID> Pengidentifikasi Unik Global (GUID) yang mewakili identitas yang ditetapkan sistem untuk aplikasi logika Anda di penyewa Microsoft Entra.
  4. Sekarang ikuti langkah-langkah yang memberikan akses identitas yang ditetapkan sistem ke sumber daya nanti dalam panduan ini.

Mengaktifkan identitas yang ditetapkan sistem di templat ARM

Untuk mengotomatisasi pembuatan dan penyebaran sumber daya aplikasi logika, Anda dapat menggunakan Template ARM. Untuk mengaktifkan identitas yang ditetapkan sistem untuk sumber daya aplikasi logika Anda dalam templat, tambahkan objek identitas dan properti jenis anak ke definisi sumber daya aplikasi logika dalam templat, misalnya:

{
   "apiVersion": "2016-06-01",
   "type": "Microsoft.logic/workflows",
   "name": "[variables('logicappName')]",
   "location": "[resourceGroup().location]",
   "identity": {
      "type": "SystemAssigned"
   },
   "properties": {},
   <...>
}

Saat Azure membuat definisi sumber daya aplikasi logika Anda, objek identitas mendapatkan properti lain berikut:

"identity": {
   "type": "SystemAssigned",
   "principalId": "<principal-ID>",
   "tenantId": "<Entra-tenant-ID>"
}
Properti (JSON) Nilai Deskripsi
principalId <principal-ID> Pengidentifikasi Unik Global (GUID) dari objek perwakilan layanan untuk identitas terkelola yang mewakili aplikasi logika Anda di penyewa Microsoft Entra. GUID ini terkadang muncul sebagai "ID objek" atau objectID.
tenantId <MICROSOFT-Entra-ID-tenant-ID> Pengidentifikasi Unik Global (GUID) yang mewakili penyewa Microsoft Entra tempat aplikasi logika sekarang menjadi anggota. Di dalam penyewa Microsoft Entra, perwakilan layanan memiliki nama yang sama dengan instans aplikasi logika.

Membuat identitas yang ditetapkan pengguna di portal Microsoft Azure

Sebelum Anda dapat mengaktifkan identitas yang ditetapkan pengguna pada sumber daya aplikasi logika Konsumsi atau sumber daya aplikasi logika Standar, Anda harus membuat identitas tersebut sebagai sumber daya Azure terpisah.

  1. Di kotak pencarian portal Azure, masukkan identitas terkelola. Dari daftar hasil, pilih Identitas Terkelola.

    Cuplikan layar memperlihatkan portal Azure dengan opsi yang dipilih bernama Identitas Terkelola.

  2. Pada toolbar halaman Identitas Terkelola, pilih Buat.

  3. Berikan informasi tentang identitas terkelola Anda, dan pilih Tinjau + Buat, misalnya:

    Cuplikan layar memperlihatkan halaman bernama Buat Identitas Terkelola yang Ditetapkan Pengguna, dengan detail identitas terkelola.

    Properti Wajib Nilai Deskripsi
    Langganan Ya <Azure-subscription-name> Nama langganan Azure
    Grup sumber daya Ya <Azure-resource-group-name> Nama grup sumber daya Azure. Pilih grup baru atau pilih grup yang sudah ada. Contoh ini membuat grup baru bernama fabrikam-managed-identities-RG.
    Wilayah Ya <Wilayah-Azure> Wilayah Azure tempat menyimpan informasi akun penyimpanan Anda. Contoh ini menggunakan US Barat.
    Nama Ya <user-assigned-identity-name> Nama untuk identitas yang ditetapkan pengguna Anda. Contoh ini menggunakan Fabrikam-user-assigned-identity.

    Setelah Azure memvalidasi detail ini, Azure membuat identitas terkelola Anda. Sekarang Anda dapat menambahkan identitas yang ditetapkan pengguna ke aplikasi logika Anda.

Menambahkan identitas yang ditetapkan pengguna ke aplikasi logika di portal Azure

  1. Di portal Azure, buka sumber daya aplikasi logika Konsumsi Anda.

  2. Pada menu aplikasi logika, di bagian Pengaturan, pilih Identitas.

  3. Pada halaman Identitas , pilih Pengguna yang ditetapkan, lalu pilih Tambahkan.

    Cuplikan layar memperlihatkan aplikasi logika Konsumsi dan halaman Identitas dengan opsi yang dipilih untuk Tambahkan.

  4. Pada panel Tambahkan identitas terkelola yang ditetapkan pengguna, ikuti langkah ini:

    1. Dari daftar Pilih langganan , pilih langganan Azure Anda.

    2. Dari daftar yang memiliki semua identitas terkelola dalam langganan Anda, pilih identitas yang ditetapkan pengguna yang Anda inginkan. Untuk memfilter daftar, dalam kotak pencarian Identitas terkelola yang ditetapkan pengguna, masukkan nama untuk identitas atau grup sumber daya.

      Cuplikan layar memperlihatkan aplikasi logika Konsumsi dan identitas yang ditetapkan pengguna yang dipilih.

    3. Setelah selesai, pilih Tambahkan.

      Catatan

      Jika Anda mendapatkan kesalahan bahwa Anda hanya dapat memiliki satu identitas terkelola, aplikasi logika Anda sudah dikaitkan dengan identitas yang ditetapkan sistem. Sebelum dapat menambahkan identitas yang ditetapkan pengguna, Anda harus terlebih dahulu menonaktifkan identitas yang ditetapkan sistem.

    Aplikasi logika Anda sekarang dikaitkan dengan identitas yang ditetapkan pengguna.

    Cuplikan layar memperlihatkan aplikasi logika Konsumsi dengan identitas terkait yang ditetapkan pengguna.

  5. Sekarang ikuti langkah-langkah yang memberikan akses identitas ke sumber daya nanti dalam panduan ini.

Membuat identitas yang ditetapkan pengguna di templat ARM

Untuk mengotomatisasi pembuatan dan penyebaran sumber daya aplikasi logika, Anda dapat menggunakan Template ARM. Template ini mendukung Identitas yang ditetapkan pengguna untuk autentikasi.

Di bagian sumber daya templat Anda, definisi sumber daya aplikasi logika Anda memerlukan item berikut:

  • Objek identitas dengan properti jenis diatur ke UserAssigned

  • Objek userAssignedIdentities anak yang menentukan sumber daya dan nama yang ditetapkan pengguna

Contoh ini menunjukkan sumber daya aplikasi logika Konsumsi dan definisi alur kerja untuk permintaan HTTP PUT dengan objek identitas yang tidak diparameterisasi. Respons terhadap permintaan PUT dan operasi GET berikutnya juga mencakup objek identitas ini:

{
   "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
   "contentVersion": "1.0.0.0",
   "parameters": {<template-parameters>},
   "resources": [
      {
         "apiVersion": "2016-06-01",
         "type": "Microsoft.logic/workflows",
         "name": "[variables('logicappName')]",
         "location": "[resourceGroup().location]",
         "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
               "/subscriptions/<Azure-subscription-ID>/resourceGroups/<Azure-resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<user-assigned-identity-name>": {}
            }
         },
         "properties": {
            "definition": {<logic-app-workflow-definition>}
         },
         "parameters": {},
         "dependsOn": []
      },
   ],
   "outputs": {}
}

Jika templat Anda juga menyertakan definisi sumber daya identitas terkelola, Anda dapat membuat parameter objek identitas . Contoh berikut menunjukkan bagaimana objek userAssignedIdentities anak mereferensikan variabel userAssignedIdentityName yang Anda tentukan di bagian variabel templat Anda. Variabel ini mereferensikan ID sumber daya untuk identitas Anda yang ditetapkan pengguna.

{
   "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
   "contentVersion": "1.0.0.0",
   "parameters": {
      "Template_LogicAppName": {
         "type": "string"
      },
      "Template_UserAssignedIdentityName": {
         "type": "securestring"
      }
   },
   "variables": {
      "logicAppName": "[parameters(`Template_LogicAppName')]",
      "userAssignedIdentityName": "[parameters('Template_UserAssignedIdentityName')]"
   },
   "resources": [
      {
         "apiVersion": "2016-06-01",
         "type": "Microsoft.logic/workflows",
         "name": "[variables('logicAppName')]",
         "location": "[resourceGroup().location]",
         "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
               "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]": {}
            }
         },
         "properties": {
            "definition": {<logic-app-workflow-definition>}
         },
         "parameters": {},
         "dependsOn": [
            "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('userAssignedIdentityName'))]"
         ]
      },
      {
         "apiVersion": "2018-11-30",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities",
         "name": "[parameters('Template_UserAssignedIdentityName')]",
         "location": "[resourceGroup().location]",
         "properties": {}
      }
  ]
}

Memberikan identitas akses ke sumber daya

Sebelum dapat menggunakan identitas terkelola aplikasi logika untuk autentikasi, Anda harus menyiapkan akses untuk identitas pada sumber daya Azure target tempat Anda ingin menggunakan identitas tersebut. Cara Anda menyiapkan akses bervariasi berdasarkan sumber daya target.

Catatan

Saat identitas terkelola memiliki akses ke sumber daya Azure dalam langganan yang sama, identitas hanya dapat mengakses sumber daya tersebut. Namun, dalam beberapa pemicu dan tindakan yang mendukung identitas terkelola, Anda harus terlebih dahulu memilih grup sumber daya Azure yang berisi sumber daya target. Jika identitas tidak memiliki akses di tingkat grup sumber daya, tidak ada sumber daya dalam grup yang terdaftar, meskipun memiliki akses ke sumber daya target.

Untuk menangani perilaku ini, Anda juga harus memberikan akses identitas ke grup sumber daya, bukan hanya sumber daya. Demikian juga, jika Anda harus memilih langganan sebelum Anda dapat memilih sumber daya target, Anda harus memberikan akses identitas ke langganan.

Dalam beberapa kasus, Anda mungkin memerlukan identitas untuk mendapatkan akses ke sumber daya terkait. Misalnya, Anda memiliki identitas terkelola untuk aplikasi logika yang memerlukan akses untuk memperbarui pengaturan aplikasi untuk aplikasi logika yang sama dari alur kerja. Anda harus memberikan akses identitas tersebut ke aplikasi logika terkait.

Misalnya, untuk mengakses akun penyimpanan Azure Blob dengan identitas terkelola Anda, Anda harus menyiapkan akses dengan menggunakan kontrol akses berbasis peran Azure (Azure RBAC) dan menetapkan peran yang sesuai untuk identitas tersebut ke akun penyimpanan. Langkah-langkah di bagian ini menjelaskan cara menyelesaikan tugas ini dengan menggunakan portal Azure dan templat Azure Resource Manager (templat ARM). Untuk Azure PowerShell, Azure CLI, dan Azure REST API, lihat dokumentasi berikut:

Alat Dokumentasi
Azure PowerShell Menambahkan penetapan peran
Azure CLI Menambahkan penetapan peran
REST API Azure Menambahkan penetapan peran

Namun, untuk mengakses Azure Key Vault dengan identitas terkelola Anda, Anda harus membuat kebijakan akses untuk identitas tersebut di Key Vault Anda dan menetapkan izin yang sesuai untuk identitas tersebut di Key Vault tersebut. Langkah-langkah selanjutnya di bagian ini menjelaskan cara menyelesaikan tugas ini dengan menggunakan portal Azure. Untuk templat Resource Manager, PowerShell, dan Azure CLI, lihat dokumentasi berikut ini:

Alat Dokumentasi
Templat Azure Resource Manager (templat ARM) Definisi sumber daya kebijakan akses Key Vault
Azure PowerShell Menetapkan kebijakan akses Key Vault
Azure CLI Menetapkan kebijakan akses Key Vault

Menetapkan akses berbasis peran ke identitas terkelola menggunakan portal Azure

Untuk menggunakan identitas terkelola untuk autentikasi, beberapa sumber daya Azure, seperti akun penyimpanan Azure, mengharuskan Anda menetapkan identitas tersebut ke peran yang memiliki izin yang sesuai pada sumber daya target. Sumber daya Azure lainnya, seperti Azure Key Vaults, mengharuskan Anda membuat kebijakan akses yang memiliki izin yang sesuai pada sumber daya target untuk identitas tersebut.

  1. Di portal Microsoft Azure, buka sumber daya tempat Anda ingin menggunakan identitas.

  2. Pada menu sumber daya, pilih Kontrol akses (IAM)>Tambahkan>penetapan peran.

    Catatan

    Jika opsi Tambahkan penetapan peran dinonaktifkan, artinya Anda tidak memiliki izin untuk menetapkan peran. Untuk informasi selengkapnya, lihat Peran bawaan Microsoft Entra.

  3. Tetapkan peran yang diperlukan ke identitas terkelola Anda. Pada tab Peran, tetapkan peran yang memberi identitas Anda akses yang diperlukan ke sumber daya saat ini.

    Untuk contoh ini, tetapkan peran yang diberi nama Kontributor Penyimpanan Data Blob yang mencakup akses tulis untuk blob dalam kontainer Azure Storage. Untuk informasi selengkapnya tentang peran kontainer penyimpanan tertentu, lihat Peran yang dapat mengakses blob dalam kontainer Azure Storage.

  4. Selanjutnya, pilih identitas terkelola tempat Anda ingin menetapkan peran. Di Tetapkan akses ke, pilih Identitas Terkelola>Tambahkan anggota.

  5. Berdasarkan jenis identitas terkelola Anda, pilih atau berikan nilai-nilai berikut:

    Jenis Instans layanan Azure Langganan Anggota
    Ditetapkan sistem Aplikasi Logika <Azure-subscription-name> <nama-aplikasi-logika-Anda>
    Ditetapkan-pengguna Tidak berlaku <Azure-subscription-name> <nama-identitas-yang-ditetapkan pengguna-Anda>

    Untuk informasi selengkapnya tentang menetapkan peran, lihat Menetapkan peran menggunakan portal Azure.

Setelah selesai, Anda dapat menggunakan identitas untuk mengautentikasi akses pemicu dan tindakan yang mendukung identitas terkelola.

Untuk informasi umum selengkapnya tentang tugas ini, lihat Menetapkan akses identitas terkelola ke sumber daya lain menggunakan Azure RBAC.

Membuat kebijakan akses menggunakan portal Azure

Untuk menggunakan identitas terkelola untuk autentikasi, beberapa sumber daya Azure, seperti Azure Key Vault, mengharuskan Anda membuat kebijakan akses yang memiliki izin yang sesuai pada sumber daya target untuk identitas tersebut. Sumber daya Azure lainnya, seperti akun penyimpanan Azure, mengharuskan Anda menetapkan identitas tersebut ke peran yang memiliki izin yang sesuai pada sumber daya target.

  1. Di portal Azure, buka sumber daya target di tempat Anda ingin menggunakan identitas tersebut. Contoh ini menggunakan Azure Key Vault sebagai sumber daya target.

  2. Pada menu sumber daya, pilih Buat kebijakan>Akses, yang membuka panel Buat kebijakan akses.

    Catatan

    Jika sumber daya tidak memiliki opsi Kebijakan akses, coba tetapkan penetapan peran.

    Cuplikan layar memperlihatkan contoh portal Azure dan brankas kunci dengan panel terbuka bernama Kebijakan akses.

  3. Pada tab Izin, pilih izin wajib yang dibutuhkan identitas untuk mengakses sumber daya target.

    Misalnya, untuk menggunakan identitas dengan operasi Daftar rahasia konektor terkelola Azure Key Vault, identitas memerlukan izin Daftar. Jadi, di kolom Izin rahasia, pilih List.

    Cuplikan layar memperlihatkan tab Izin dengan izin Daftar yang dipilih.

  4. Jika Anda sudah siap, pilih Berikutnya. Pada tab Principal, temukan dan pilih identitas terkelola, yang merupakan identitas yang ditetapkan pengguna dalam contoh ini.

  5. Lewati langkah Application opsional, pilih Next, dan selesaikan pembuatan kebijakan akses.

Bagian berikutnya memperlihatkan cara menggunakan identitas terkelola dengan pemicu atau tindakan untuk mengautentikasi akses. Contoh ini berlanjut dengan langkah dari bagian sebelumnya, di mana Anda mengatur akses untuk identitas terkelola menggunakan RBAC dan tidak menggunakan Azure Key Vault sebagai contoh. Namun, langkah umum untuk menggunakan identitas terkelola untuk autentikasi adalah sama.

Mengautentikasi akses dengan identitas terkelola

Setelah mengaktifkan identitas terkelola untuk sumber daya aplikasi logika Anda dan memberikan akses identitas tersebut ke sumber daya atau layanan target Azure, Anda dapat menggunakan identitas tersebut dalam pemicu dan tindakan yang mendukung identitas terkelola.

Penting

Jika Anda memiliki fungsi Azure tempat Anda ingin menggunakan identitas yang ditetapkan sistem, aktifkan autentikasi untuk Azure Functions terlebih dahulu.

Langkah-langkah berikut menunjukkan cara menggunakan identitas terkelola dengan pemicu atau tindakan menggunakan portal Azure. Untuk menentukan identitas terkelola dalam definisi JSON yang mendasari pemicu atau tindakan, lihat Autentikasi identitas terkelola.

  1. Di portal Azure, buka sumber daya aplikasi logika Konsumsi Anda.

  2. Jika Anda belum melakukannya, tambahkan pemicu atau tindakan yang mendukung identitas terkelola.

    Catatan

    Tidak semua dukungan operasi konektor memungkinkan Anda menambahkan jenis autentikasi. Untuk mengetahui informasi selengkapnya, lihat Jenis autentikasi untuk pemicu dan tindakan yang mendukung autentikasi.

  3. Pada pemicu atau tindakan yang Anda tambahkan, ikuti langkah-langkah berikut ini:

    • Operasi konektor bawaan yang mendukung autentikasi identitas terkelola

      Langkah-langkah ini berlanjut dengan menggunakan tindakan HTTP sebagai contoh.

      1. Dari daftar Parameter tingkat lanjut, tambahkan properti Autentikasi, jika properti belum muncul.

        Cuplikan layar memperlihatkan alur kerja Konsumsi dengan tindakan bawaan dan daftar yang dibuka bernama Parameter tingkat lanjut, dengan opsi yang dipilih untuk Autentikasi.

        Sekarang, properti Autentikasi dan daftar Jenis Autentikasi muncul pada tindakan.

        Cuplikan layar memperlihatkan bagian parameter tingkat lanjut dengan properti Autentikasi tambahan dan daftar Jenis Autentikasi.

      2. Dari daftar Jenis Autentikasi, pilih Identitas Terkelola.

        Cuplikan layar memperlihatkan alur kerja Konsumsi dengan tindakan bawaan, daftar Jenis Autentikasi yang dibuka, dan opsi yang dipilih untuk Identitas Terkelola.

        Bagian Autentikasi sekarang memperlihatkan opsi berikut:

        • Daftar Identitas Terkelola tempat Anda dapat memilih identitas terkelola tertentu

        • Properti Audiens muncul pada pemicu dan tindakan tertentu sehingga Anda dapat mengatur ID sumber daya untuk sumber daya atau layanan target Azure. Jika tidak, properti Audiens akan secara dafault menggunakan ID sumber daya https://management.azure.com/ yang merupakan ID sumber daya untuk Azure Resource Manager.

      3. Dari daftar Identitas Terkelola, pilih identitas yang ingin Anda gunakan, misalnya:

        Cuplikan layar memperlihatkan bagian Autentikasi dengan daftar Jenis Autentikasi dan properti Audiens.

        Catatan

        Opsi default yang dipilih adalah identitas terkelola yang ditetapkan sistem, bahkan ketika Anda tidak mengaktifkan identitas terkelola apa pun.

        Agar berhasil menggunakan identitas terkelola, Anda harus terlebih dahulu mengaktifkan identitas tersebut di aplikasi logika Anda. Pada aplikasi logika Konsumsi, Anda dapat memiliki identitas terkelola yang ditetapkan sistem atau ditetapkan pengguna, tetapi tidak keduanya.

      Untuk mengetahui informasi selengkapnya, lihat Contoh: Mengautentikasi pemicu atau tindakan bawaan dengan identitas terkelola.

    • Operasi konektor bawaan yang mendukung autentikasi identitas terkelola

      1. Pada panel Buat Koneksi ion, dari daftar Autentikasi, pilih Identitas Terkelola, misalnya:

        Cuplikan layar memperlihatkan alur kerja Konsumsi dengan tindakan Azure Resource Manager dan opsi yang dipilih untuk Identitas Terkelola.

      2. Pada panel berikutnya, untuk Nama Koneksi ion, berikan nama yang akan digunakan untuk koneksi.

      3. Untuk jenis autentikasi, pilih salah satu opsi berikut berdasarkan konektor terkelola Anda:

        • Autentikasi tunggal: Konektor ini hanya mendukung satu jenis autentikasi, yang merupakan identitas terkelola dalam kasus ini.

          1. Dari daftar Identitas Terkelola, pilih identitas terkelola yang saat ini diaktifkan.

          2. Saat Anda siap, pilih Buat Baru.

        • Multi-autentikasi: Konektor ini mendukung beberapa jenis autentikasi, tetapi Anda dapat memilih dan hanya menggunakan satu jenis sekaligus.

          Langkah-langkah ini berlanjut dengan menggunakan tindakan Azure Blob Storage sebagai contoh.

          1. Dari daftar Jenis Autentikasi, pilih Identitas Terkelola Logic Apps.

            Cuplikan layar memperlihatkan alur kerja Konsumsi, kotak pembuatan koneksi, dan opsi yang dipilih untuk Identitas Terkelola Logic Apps.

          2. Saat Anda siap, pilih Buat Baru.

        Untuk mengetahui informasi selengkapnya, lihat Contoh: Mengautentikasi pemicu atau tindakan konektor terkelola dengan identitas terkelola.

Contoh: Mengautentikasi pemicu atau tindakan bawaan dengan identitas terkelola

Pemicu atau tindakan HTTP dapat menggunakan identitas yang ditetapkan sistem yang Anda aktifkan pada sumber daya aplikasi logika. Secara umum, pemicu atau tindakan HTTP menggunakan properti ini untuk menentukan sumber daya atau entitas yang ingin Anda akses:

Properti Wajib Deskripsi
Metode Ya Metode HTTP yang digunakan oleh operasi yang ingin Anda jalankan
URI Ya Titik akhir URL untuk mengakses sumber daya atau entitas Azure target. Sintaks URI biasanya menyertakan ID sumber daya untuk sumber daya atau layanan Azure target.
Header No Nilai header apa pun yang Anda butuhkan atau ingin sertakan dalam permintaan keluar, seperti jenis konten
Kueri No Setiap parameter kueri yang ingin atau perlu disertakan dalam permintaan. Misalnya, parameter kueri untuk operasi tertentu ataupun untuk versi API operasi yang ingin Anda jalankan.
Autentikasi Ya Jenis autentikasi yang digunakan untuk mengautentikasi akses ke sumber daya atau layanan target Azure

Sebagai contoh spesifik, misalkan Anda ingin menjalankan operasi Blob Snapshot pada blob di akun Azure Storage tempat Anda sebelumnya menyiapkan akses untuk identitas Anda. Namun, konektor Azure Blob Storage tidak menawarkan operasi tersebut saat ini. Sebagai gantinya, Anda dapat menjalankan operasi ini dengan menggunakan tindakan HTTP atau operasi REST API Layanan Blob lainnya.

Penting

Untuk mengakses akun penyimpanan Azure di belakang firewall dengan menggunakan konektor Azure Blob Storage dan identitas terkelola, pastikan Anda juga menyiapkan akun penyimpanan Anda dengan pengecualian yang memungkinkan akses oleh layanan Microsoft tepercaya.

Untuk menjalankan operasi Snapshot Blob, tindakan HTTP menentukan properti berikut:

Properti Wajib Contoh nilai Deskripsi
URI Ya https://<storage-account-name>/<folder-name>/{name} ID sumber daya untuk file Azure Blob Storage di lingkungan Azure Global (publik), yang menggunakan sintaks ini
Metode Ya PUT Metode HTTP yang digunakan operasi Blob Snapshot
Header Untuk Azure Storage x-ms-blob-type = BlockBlob

x-ms-version = 2024-05-05

x-ms-date = formatDateTime(utcNow(),'r')
Nilai header x-ms-blob-type, x-ms-version, dan x-ms-date diperlukan untuk operasi Azure Storage.

Penting: Dalam permintaan pemicu dan tindakan HTTP keluar untuk Azure Storage, header memerlukan properti x-ms-version dan versi API untuk operasi yang ingin Anda jalankan. x-ms-date harus merupakan tanggal saat ini. Jika tidak, alur kerja Anda gagal dengan kesalahan 403 FORBIDDEN. Untuk mendapatkan tanggal saat ini dalam format yang diperlukan, Anda dapat menggunakan ekspresi dalam nilai contoh.

Untuk informasi selengkapnya, lihat dokumentasi berikut ini:

- Header permintaan - Blob Snapshot
- Penerapan versi untuk layanan Azure Storage
Kueri Hanya untuk operasi Blob Snapshot comp = snapshot Nama dan nilai parameter kueri untuk operasi.
  1. Pada perancang alur kerja, tambahkan pemicu apa pun yang Anda inginkan, lalu tambahkan tindakan HTTP .

    Contoh berikut menunjukkan sampel tindakan HTTP dengan semua nilai properti yang dijelaskan sebelumnya untuk digunakan dengan operasi Snapshot Blob:

    Cuplikan layar memperlihatkan portal Azure, alur kerja Konsumsi, dan tindakan HTTP yang disiapkan untuk mengakses sumber daya.

  2. Dalam tindakan HTTP, tambahkan properti Autentikasi. Dari daftar Parameter tingkat lanjut, pilih Autentikasi.

    Cuplikan layar memperlihatkan alur kerja Konsumsi dengan tindakan HTTP dan daftar Parameter tingkat lanjut yang dibuka dengan properti yang dipilih bernama Autentikasi.

    Bagian Autentikasi sekarang muncul di tindakan HTTP Anda.

    Catatan

    Tidak semua dukungan pemicu dan tindakan memungkinkan Anda menambahkan jenis autentikasi. Untuk mengetahui informasi selengkapnya, lihat Jenis autentikasi untuk pemicu dan tindakan yang mendukung autentikasi.

  3. Dari daftar Jenis Autentikasi, pilih Identitas Terkelola.

    Cuplikan layar memperlihatkan alur kerja Konsumsi, tindakan HTTP, dan properti Jenis Autentikasi dengan opsi yang dipilih untuk Identitas Terkelola.

  4. Dari daftar Identitas Terkelola, pilih dari opsi yang tersedia berdasarkan skenario Anda.

    • Jika Anda menyiapkan identitas yang ditetapkan sistem, pilih Identitas terkelola yang ditetapkan sistem.

      Cuplikan layar memperlihatkan alur kerja Konsumsi, tindakan HTTP, dan properti Identitas Terkelola dengan opsi yang dipilih untuk Identitas terkelola yang ditetapkan sistem.

    • Jika Anda menyiapkan identitas yang ditetapkan pengguna, pilih identitas tersebut.

      Cuplikan layar memperlihatkan alur kerja Konsumsi, tindakan HTTP, dan properti Identitas Terkelola dengan identitas yang ditetapkan pengguna yang dipilih.

    Contoh ini berlanjut dengan Identitas terkelola yang ditetapkan sistem.

  5. Pada beberapa pemicu dan tindakan, properti Audiens muncul sehingga Anda dapat mengatur ID sumber daya untuk sumber daya atau layanan Azure target.

    Misalnya, untuk mengautentikasi akses ke sumber daya Key Vault di cloud Azure global, Anda harus mengatur properti Audiens ke ID sumber daya berikut:https://vault.azure.net

    Jika Anda tidak mengatur properti Audiens , secara default, properti Audiens menggunakan https://management.azure.com/ ID sumber daya, yang merupakan ID sumber daya untuk Azure Resource Manager.

    Penting

    Pastikan ID sumber daya target sama persis dengan nilai yang diharapkan ID Microsoft Entra. Jika tidak, Anda mungkin mendapatkan 400 Bad Request kesalahan atau 401 Unauthorized kesalahan. Jadi, jika ID sumber daya menyertakan garis miring berikutnya, pastikan untuk menyertakannya. Jika tidak, jangan sertakan.

    Misalnya, ID sumber daya untuk semua akun Azure Blob Storage memerlukan garis miring. Namun, ID sumber daya untuk akun penyimpanan tertentu tidak memerlukan garis miring. Periksa ID sumber daya untuk layanan Azure yang mendukung ID Microsoft Entra.

    Contoh ini menetapkan properti Audiens ke https://storage.azure.com/ agar token akses yang digunakan untuk autentikasi valid untuk semua akun penyimpanan. Namun, Anda juga dapat menentukan URL layanan root, https://<your-storage-account>.blob.core.windows.net, untuk akun penyimpanan tertentu.

    Cuplikan layar memperlihatkan alur kerja Konsumsi dan tindakan HTTP dengan properti Audiens diatur ke ID sumber daya target.

    Untuk informasi selengkapnya tentang mengotorisasi akses dengan ID Microsoft Entra untuk Azure Storage, lihat dokumentasi berikut ini:

  6. Lanjutkan membangun alur kerja dengan cara yang Anda inginkan.

Contoh: Mengautentikasi pemicu atau tindakan konektor terkelola dengan identitas terkelola

Konektor terkelola Azure Resource Manager memiliki tindakan bernama Baca sumber daya, yang dapat menggunakan identitas terkelola yang Anda aktifkan di sumber daya aplikasi logika Anda. Contoh ini menunjukkan cara menggunakan identitas terkelola yang ditetapkan sistem dengan konektor terkelola.

  1. Pada perancang alur kerja, tambahkan tindakan Azure Resource Manager bernama Baca sumber daya.

  2. Pada panel Buat Koneksi ion, dari daftar Autentikasi, pilih Identitas Terkelola, lalu pilih Masuk.

    Catatan

    Di konektor lain, daftar Jenis Autentikasi memperlihatkan Identitas Terkelola Logic Apps, jadi pilih opsi ini.

    Cuplikan layar memperlihatkan alur kerja Konsumsi, tindakan Azure Resource Manager, daftar Autentikasi yang dibuka, dan opsi yang dipilih untuk Identitas Terkelola.

  3. Berikan nama untuk koneksi, dan pilih identitas terkelola yang ingin Anda gunakan.

    Jika Anda mengaktifkan identitas yang ditetapkan sistem, daftar Identitas terkelola secara otomatis memilih Identitas terkelola yang ditetapkan sistem. Jika Anda mengaktifkan identitas yang ditetapkan pengguna, daftar secara otomatis memilih identitas yang ditetapkan pengguna.

    Pada contoh ini, Identitas terkelola yang ditetapkan sistem adalah satu-satunya pilihan yang tersedia.

    Cuplikan layar memperlihatkan alur kerja Konsumsi dan tindakan Azure Resource Manager dengan nama koneksi yang dimasukkan dan opsi yang dipilih untuk Identitas terkelola yang ditetapkan sistem.

    Catatan

    Jika identitas terkelola tidak diaktifkan saat Anda mencoba membuat atau mengubah koneksi, atau jika identitas terkelola dihapus saat koneksi yang didukung identitas terkelola masih ada, Anda mendapatkan kesalahan yang mengatakan Anda harus mengaktifkan identitas dan memberikan akses ke sumber daya target.

  4. Saat Anda siap, pilih Buat Baru.

  5. Setelah desainer berhasil membuat koneksi, desainer dapat mengambil nilai dinamis, konten, atau skema apa pun dengan menggunakan autentikasi identitas terkelola.

  6. Lanjutkan membangun alur kerja dengan cara yang Anda inginkan.

Definisi sumber daya aplikasi logika dan koneksi yang menggunakan identitas terkelola

Koneksi yang mengaktifkan dan menggunakan identitas terkelola adalah jenis koneksi khusus yang hanya berfungsi dengan identitas terkelola. Saat runtime, koneksi menggunakan identitas terkelola yang diaktifkan pada sumber daya aplikasi logika. Azure Logic Apps memeriksa apakah ada operasi konektor terkelola dalam alur kerja yang disiapkan untuk menggunakan identitas terkelola dan bahwa semua izin yang diperlukan ada untuk menggunakan identitas terkelola untuk mengakses sumber daya target yang ditentukan oleh operasi konektor. Jika pemeriksaan ini berhasil, Azure Logic Apps mengambil token Microsoft Entra yang terkait dengan identitas terkelola, menggunakan identitas tersebut untuk mengautentikasi akses ke sumber daya Azure target, dan melakukan operasi yang dikonfigurasi dalam alur kerja.

Dalam sumber daya aplikasi logika Konsumsi, konfigurasi koneksi disimpan di objek definisi parameters sumber daya, yang berisi $connections objek yang menyertakan penunjuk ke ID sumber daya koneksi bersama dengan ID sumber daya identitas terkelola saat identitas yang ditetapkan pengguna diaktifkan.

Contoh ini menunjukkan parameters konfigurasi objek saat aplikasi logika mengaktifkan identitas yang ditetapkan sistem:

"parameters": {
   "$connections": {
      "value": {
         "<action-name>": {
            "connectionId": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>",
            "connectionName": "<connector-name>",
            "connectionProperties": {
               "authentication": {
                  "type": "ManagedServiceIdentity"
               }
            },
            "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/<managed-connector-type>"
         }
      }
   }
}

Contoh ini menunjukkan parameters konfigurasi objek saat aplikasi logika mengaktifkan identitas terkelola yang ditetapkan pengguna:

"parameters": {
   "$connections": {
      "value": {
         "<action-name>": {
            "connectionId": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>",
            "connectionName": "<connector-name>",
            "connectionProperties": {
               "authentication": {
                  "type": "ManagedServiceIdentity",
                  "identity": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/microsoft.managedidentity/userassignedidentities/<managed-identity-name>"
               }
            },
            "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/<managed-connector-type>"
         }
      }
   }
}

Templat ARM untuk koneksi API dan identitas terkelola

Jika Anda menggunakan templat ARM untuk mengotomatiskan penyebaran, dan alur kerja Anda menyertakan koneksi API, yang dibuat oleh konektor terkelola yang menggunakan identitas terkelola, Anda memiliki langkah tambahan untuk diambil.

Dalam templat ARM, definisi sumber daya konektor yang mendasar berbeda berdasarkan apakah Anda memiliki sumber daya aplikasi logika Konsumsi atau Standar dan apakah konektor menunjukkan opsi autentikasi tunggal atau multi-autentikasi.

Contoh berikut berlaku untuk sumber daya aplikasi logika Konsumsi dan menunjukkan bagaimana definisi sumber daya konektor yang mendasar berbeda antara konektor autentikasi tunggal dan konektor multi-autentikasi.

Autentikasi tunggal

Contoh ini menunjukkan definisi sumber daya koneksi yang mendasar untuk tindakan konektor yang hanya mendukung satu jenis autentikasi dan menggunakan identitas terkelola dalam alur kerja aplikasi logika Konsumsi di mana definisi menyertakan atribut berikut:

  • Properti kind diatur ke V1 untuk aplikasi logika Consumption.

  • Properti parameterValueType diatur ke Alternative.

{
    "type": "Microsoft.Web/connections",
    "apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
    "name": "[variables('connections_<connector-name>_name')]",
    "location": "[parameters('location')]",
    "kind": "V1",
    "properties": {
        "alternativeParameterValues": {},
        "api": {
            "id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureautomation')]"
        },
        "authenticatedUser": {},
        "connectionState": "Enabled",
        "customParameterValues": {},
        "displayName": "[variables('connections_<connector-name>_name')]",
        "parameterValueSet": {},
        "parameterValueType": "Alternative"
    }
},

Multi-autentikasi

Contoh ini menunjukkan definisi sumber daya koneksi yang mendasar untuk tindakan konektor yang mendukung beberapa jenis autentikasi dan menggunakan identitas terkelola dalam alur kerja aplikasi logika Konsumsi di mana definisi menyertakan atribut berikut:

  • Properti kind diatur ke V1 untuk aplikasi logika Consumption.

  • Objek tersebutparameterValueSet menyertakan properti yang name diatur ke managedIdentityAuth dan properti yang values diatur ke objek kosong.

{
    "type": "Microsoft.Web/connections",
    "apiVersion": "[providers('Microsoft.Web','connections').apiVersions[0]]",
    "name": "[variables('connections_<connector-name>_name')]",
    "location": "[parameters('location')]",
    "kind": "V1",
    "properties": {
        "alternativeParameterValues":{},
        "api": {
            "id": "[subscriptionResourceId('Microsoft.Web/locations/managedApis', parameters('location'), 'azureblob')]"
        },
        "authenticatedUser": {},
        "connectionState": "Enabled",
        "customParameterValues": {},
        "displayName": "[variables('connections_<connector-name>_name')]",
        "parameterValueSet":{
            "name": "managedIdentityAuth",
            "values": {}
        },
        "parameterValueType": "Alternative"
    }
}

Menyiapkan kontrol lanjutan atas autentikasi koneksi API

Saat alur kerja aplikasi logika Standar Anda menggunakan koneksi API, yang dibuat oleh konektor terkelola, Azure Logic Apps berkomunikasi dengan sumber daya target, seperti akun email, brankas kunci, dan sebagainya, menggunakan dua koneksi:

Diagram konseptual menunjukkan koneksi pertama dengan autentikasi antara aplikasi logika dan penyimpanan token ditambah koneksi kedua antara penyimpanan token dan sumber daya target.

  • Koneksi #1 diatur dengan autentikasi untuk penyimpanan token internal.

  • Koneksi #2 diatur dengan autentikasi untuk sumber daya target.

Namun, ketika alur kerja aplikasi logika Konsumsi menggunakan koneksi API, koneksi #1 diabstraksi dari Anda tanpa opsi konfigurasi apa pun. Dengan sumber daya aplikasi logika Standar, Anda memiliki kontrol lebih atas aplikasi logika dan alur kerja Anda. Secara default, koneksi #1 secara otomatis diatur untuk menggunakan identitas yang ditetapkan sistem.

Jika skenario Anda memerlukan kontrol yang lebih baik atas autentikasi koneksi API, Anda dapat secara opsional mengubah autentikasi untuk koneksi #1 dari identitas default yang ditetapkan sistem ke identitas yang ditetapkan pengguna yang Anda tambahkan ke aplikasi logika Anda. Autentikasi ini berlaku untuk setiap koneksi API, sehingga Anda dapat mencampur identitas yang ditetapkan sistem dan yang ditetapkan pengguna di koneksi yang berbeda ke sumber daya target yang sama.

Dalam file connections.json aplikasi logika Standar Anda, yang menyimpan informasi tentang setiap koneksi API, setiap definisi koneksi memiliki dua authentication bagian, misalnya:

"keyvault": {
   "api": {
      "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault"
   },
   "authentication": {
      "type": "ManagedServiceIdentity",
   },
   "connection": {
      "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>"
   },
   "connectionProperties": {
      "authentication": {
         "audience": "https://vault.azure.net",
         "type": "ManagedServiceIdentity"
      }
   },
   "connectionRuntimeUrl": "<connection-runtime-URL>"
}
  • Bagian authentication pertama dipetakan ke koneksi #1.

    Bagian ini menjelaskan autentikasi yang digunakan untuk berkomunikasi dengan toko token internal. Di masa lalu, bagian ini selalu diatur ke ManagedServiceIdentity aplikasi yang menyebar ke Azure dan tidak memiliki opsi yang dapat dikonfigurasi.

  • Bagian authentication kedua dipetakan ke koneksi #2.

    Bagian ini menjelaskan bahwa autentikasi yang digunakan untuk berkomunikasi dengan sumber daya target dapat bervariasi, berdasarkan jenis autentikasi yang Anda pilih untuk koneksi tersebut.

Mengapa mengubah autentikasi untuk penyimpanan token?

Dalam beberapa skenario, Anda mungkin ingin berbagi dan menggunakan koneksi API yang sama di beberapa sumber daya aplikasi logika, tetapi tidak menambahkan identitas yang ditetapkan sistem untuk setiap sumber daya aplikasi logika ke kebijakan akses sumber daya target.

Dalam skenario lain, Anda mungkin tidak ingin mengatur identitas yang ditetapkan sistem di aplikasi logika Anda sepenuhnya, sehingga Anda dapat mengubah autentikasi menjadi identitas yang ditetapkan pengguna dan menonaktifkan identitas yang ditetapkan sistem sepenuhnya.

Mengubah autentikasi untuk penyimpanan token

  1. Di portal Azure, buka sumber daya aplikasi logika Standard Anda.

  2. Pada menu sumber daya, di bawah Workflows, pilih Connections.

  3. Pada panel Koneksi ion, pilih Tampilan JSON.

    Cuplikan layar memperlihatkan portal Azure, sumber daya aplikasi logika Standar, panel Koneksi ions dengan Tampilan JSON dipilih.

  4. Di editor JSON, temukan managedApiConnections bagian, yang berisi koneksi API di semua alur kerja di sumber daya aplikasi logika Anda.

  5. Temukan koneksi di mana Anda ingin menambahkan identitas terkelola yang ditetapkan pengguna.

    Misalnya, seharusnya alur kerja Anda memiliki koneksi Azure Key Vault:

    "keyvault": {
       "api": {
          "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault"
       },
       "authentication": {
          "type": "ManagedServiceIdentity"
       },
       "connection": {
          "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>"
       },
       "connectionProperties": {
          "authentication": {
             "audience": "https://vault.azure.net",
             "type": "ManagedServiceIdentity"
          }
       },
       "connectionRuntimeUrl": "<connection-runtime-URL>"
    }
    
  6. Dalam definisi koneksi, selesaikan langkah-langkah berikut:

    1. Temukan bagian pertamaauthentication. Jika tidak ada identity properti di bagian ini authentication , aplikasi logika secara implisit menggunakan identitas yang ditetapkan sistem.

    2. identity Tambahkan properti dengan menggunakan contoh pada langkah ini.

    3. Atur nilai properti ke ID sumber daya untuk identitas yang ditetapkan pengguna.

    "keyvault": {
       "api": {
          "id": "/subscriptions/<Azure-subscription-ID>/providers/Microsoft.Web/locations/<Azure-region>/managedApis/keyvault"
       },
       "authentication": {
          "type": "ManagedServiceIdentity",
          // Add "identity" property here
          "identity": "/subscriptions/<Azure-subscription-ID>/resourcegroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity-resource-ID>"
       },
       "connection": {
          "id": "/subscriptions/<Azure-subscription-ID>/resourceGroups/<resource-group-name>/providers/Microsoft.Web/connections/<connector-name>"
       },
       "connectionProperties": {
          "authentication": {
             "audience": "https://vault.azure.net",
             "type": "ManagedServiceIdentity"
          }
       },
       "connectionRuntimeUrl": "<connection-runtime-URL>"
    }
    
  7. Di portal Azure, buka sumber daya target, dan berikan akses ke identitas terkelola yang ditetapkan pengguna, berdasarkan kebutuhan sumber daya target.

    Misalnya, untuk Azure Key Vault, tambahkan identitas tersebut ke kebijakan akses Key Vault. Untuk Azure Blob Storage, tetapkan peran yang diperlukan untuk identitas ke akun penyimpanan.

Nonaktifkan identitas terkelola

Untuk berhenti menggunakan identitas terkelola untuk autentikasi, pertama-tama hapus akses identitas ke sumber daya target. Selanjutnya, nonaktifkan identitas yang ditetapkan sistem atau hapus identitas yang ditetapkan pengguna.

Saat Anda menonaktifkan identitas terkelola pada sumber daya aplikasi logika, Anda menghapus kemampuan identitas tersebut untuk meminta akses ke sumber daya Azure tempat identitas memiliki akses.

Catatan

Jika Anda menonaktifkan identitas yang ditetapkan sistem, setiap dan semua koneksi yang digunakan oleh alur kerja dalam alur kerja aplikasi logika itu tidak akan berfungsi saat runtime, bahkan jika Anda segera mengaktifkan identitas lagi. Perilaku ini terjadi karena menonaktifkan identitas akan menghapus ID objeknya. Setiap kali Anda mengaktifkan identitas, Azure menghasilkan identitas dengan ID objek yang berbeda dan unik. Untuk mengatasi masalah tersebut, Anda harus membuat ulang koneksi sehingga ID objek saat ini akan digunakan untuk identitas yang ditetapkan sistem saat ini.

Cobalah sebaik mungkin untuk tidak menonaktifkan identitas yang ditetapkan sistem. Jika Anda ingin menghapus akses identitas ke sumber daya Azure, hapus tugas peran identitas dari sumber daya target. Jika Anda menghapus sumber daya aplikasi logika, Azure secara otomatis menghapus identitas terkelola dari ID Microsoft Entra.

Langkah-langkah di bagian ini mencakup menggunakan portal Microsoft Azure dan templat Azure Resource Manager (templat ARM). Untuk Azure PowerShell, Azure CLI, dan Azure REST API, lihat dokumentasi berikut:

Alat Dokumentasi
Azure PowerShell 1. Hapus penetapan peran.
2. Hapus identitas yang ditetapkan pengguna.
Azure CLI 1. Hapus penetapan peran.
2. Hapus identitas yang ditetapkan pengguna.
REST API Azure 1. Hapus penetapan peran.
2. Hapus identitas yang ditetapkan pengguna.

Untuk informasi selengkapnya, lihat Menghapus penetapan peran Azure.

Menonaktifkan identitas terkelola di portal Microsoft Azure

Guna menghapus akses untuk identitas terkelola, hapus penetapan peran identitas dari sumber daya target, lalu nonaktifkan identitas terkelola.

Hapus penetapan peran

Langkah-langkah berikut menghapus akses ke sumber daya target dari identitas terkelola:

  1. Di portal Microsoft Azure, buka sumber daya Azure target tempat Anda ingin menghapus akses untuk identitas terkelola.

  2. Pilih Layanan kontrol akses (IAM) dari menu sumber daya target. Di bagian toolbar, pilih Penetapan peran.

  3. Dalam daftar peran, pilih identitas terkelola yang ingin Anda hapus. Pada toolbar, pilih Hapus.

    Tip

    Jika opsi Hapus tidak dapat dilakukan, kemungkinan besar Anda tidak memiliki izin. Untuk informasi selengkapnya tentang izin yang memungkinkan Anda mengelola peran untuk sumber daya, lihat Izin peran administrator di ID Microsoft Entra.

Menonaktifkan identitas terkelola pada sumber daya aplikasi logika

  1. Di portal Microsoft Azure, buka sumber daya aplikasi logika Anda.

  2. Pada menu sumber daya aplikasi logika, di bawah Pengaturan, pilih Identitas, lalu ikuti langkah-langkah untuk identitas Anda:

    • Pilih Sistem yang ditetapkan >Aktifkan>Simpan. Saat Azure meminta Anda untuk mengonfirmasi, pilih Ya.

    • Pilih Pengguna yang ditetapkan dan identitas terkelola, lalu pilih Hapus. Saat Azure meminta Anda untuk mengonfirmasi, pilih Ya.

Menonaktifkan identitas terkelola di templat ARM

Jika Anda telah membuat identitas terkelola aplikasi logika dengan menggunakan templat ARM, atur properti anak type dari objek identity ke None.

"identity": {
   "type": "None"
}