Buat parameter lintas lingkungan untuk input alur kerja di Azure Logic Apps

Berlaku untuk: Azure Logic Apps (Konsumsi + Standar)

Saat Anda perlu mengabstraksi nilai yang mungkin berubah dalam alur kerja di seluruh lingkungan pengembangan, pengujian, dan produksi, Anda dapat menentukan parameter alur kerja. Saat Anda menggunakan parameter ini daripada variabel khusus lingkungan, Anda dapat lebih fokus pada merancang logika bisnis alur kerja Anda lalu menyisipkan variabel khusus lingkungan Anda nanti.

Artikel ini memperlihatkan cara membuat, menggunakan, dan mengedit parameter untuk alur kerja aplikasi logika Konsumsi multipenyewa dan untuk alur kerja aplikasi logika Standar penyewa tunggal. Anda juga mempelajari cara mengelola variabel lingkungan.

Untuk informasi lebih lanjut tentang Azure Logic Apps dengan arsitektur multitenant dan single-tenant, lihat Single-tenant versus multitenant di Azure Logic Apps.

Prasyarat

Parameter untuk Konsumsi versus alur kerja aplikasi logika standar

Untuk alur kerja aplikasi logika Konsumsi dan Standar, Anda dapat menentukan parameter menggunakan perancang alur kerja. Setelah menentukan parameter, Anda dapat mereferensikan parameter tersebut dari alur kerja atau koneksi apa pun di sumber daya aplikasi logika yang sama .

Dalam alur kerja aplikasi logika Konsumsi multipenyewa, Anda membuat dan menggunakan parameter di perancang. Kemudian Anda menentukan dan mengatur variabel lingkungan di templat Azure Resource Manager (templat ARM) dan file parameter templat. Dalam skenario ini, Anda harus menentukan dan mengatur parameter saat penyebaran. Persyaratan ini berarti bahwa bahkan jika Anda hanya perlu mengubah satu variabel, Anda harus menyebarkan ulang templat ARM aplikasi logika Anda.

Di Azure Logic Apps penyewa tunggal, Anda dapat bekerja dengan variabel lingkungan baik pada waktu runtime maupun waktu penyebaran dengan menggunakan parameter dan pengaturan aplikasi. Pengaturan aplikasi berisi opsi konfigurasi global untuk semua alur kerja dalam sumber daya aplikasi logika yang sama. Untuk informasi selengkapnya, lihat Mengedit pengaturan host dan aplikasi untuk aplikasi logika berbasis penyewa tunggal.

Penting

Saat Anda menggunakan informasi sensitif, seperti string koneksi yang menyertakan nama pengguna dan kata sandi, pastikan untuk menggunakan alur autentikasi paling aman yang tersedia. Misalnya, dalam alur kerja aplikasi logika Standar, jenis data aman, seperti securestring dan secureobject, tidak didukung. Microsoft menyarankan agar Anda mengautentikasi akses ke sumber daya Azure dengan identitas terkelola jika memungkinkan, dan menetapkan peran yang memiliki hak istimewa paling sedikit yang diperlukan.

Jika kemampuan ini tidak tersedia, pastikan untuk mengamankan string koneksi melalui cara lain, seperti Azure Key Vault, yang dapat Anda gunakan dengan pengaturan aplikasi. Anda kemudian dapat langsung mereferensikan string aman, seperti string dan kunci koneksi. Mirip dengan templat ARM, tempat Anda dapat menentukan variabel lingkungan pada waktu penyebaran, Anda dapat menentukan pengaturan aplikasi dalam definisi alur kerja aplikasi logika Anda. Anda kemudian dapat menangkap nilai infrastruktur yang dihasilkan secara dinamis, seperti titik akhir koneksi dan string penyimpanan. Untuk informasi selengkapnya, lihat Jenis aplikasi untuk platform identitas Microsoft.

Pengaturan aplikasi memiliki batas ukuran. Anda juga tidak dapat mereferensikannya dari area tertentu di Azure Logic Apps. Parameter menawarkan rentang kasus penggunaan yang lebih luas daripada pengaturan aplikasi, seperti dukungan untuk ukuran nilai besar dan objek yang kompleks.

Misalnya, jika Anda menggunakan Visual Studio Code sebagai alat pengembangan untuk menjalankan alur kerja secara lokal, Anda dapat menentukan parameter menggunakan file parameters.json . Anda lalu dapat mereferensikan parameter apa pun dalam file parameter ini dari alur kerja apa pun dalam file workflow.json proyek Anda atau dari objek koneksi dalam file connections.json proyek Anda. Daftar berikut ini menjelaskan kasus penggunaan umum:

  • Memiliki file parameter pengujian yang mencakup semua nilai yang Anda gunakan selama pengujian. Saat penyebaran, ganti file parameter pengujian Anda dengan file parameter produksi Anda.

  • Parameterisasi berbagai bagian file connections.json Anda. Anda kemudian dapat memeriksa file connections.json Anda ke kontrol sumber dan mengelola koneksi apa pun melalui file parameters.json Anda.

  • Anda juga dapat membuat parameter objek kompleks, seperti objek JSON authentication. Misalnya, ganti nilai objek authentication dengan string yang membawa ekspresi parameter tunggal, seperti @parameters('api-auth').

  • Tinjau dan edit pengaturan aplikasi dalam file local.settings.json proyek Anda. Kemudian referensikan pengaturan aplikasi ini di parameter Anda.

Catatan

Pertimbangkan untuk menggunakan parameter sebagai cara default untuk membuat parameter nilai alih-alih pengaturan aplikasi. Dengan demikian, ketika Anda perlu menyimpan kunci atau string aman, Anda dapat mengikuti rekomendasi untuk mereferensikan pengaturan aplikasi dari parameter Anda. Anda dapat menggunakan kedua opsi dalam solusi Anda dengan menggunakan parameter untuk mereferensikan pengaturan aplikasi.

Menentukan, menggunakan, dan mengedit parameter

Prosedur ini menjelaskan cara bekerja dengan parameter untuk alur kerja aplikasi logika Konsumsi atau Standar di portal Microsoft Azure.

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

    • Untuk Aplikasi logika standar, pada menu bilah sisi sumber daya, di bawah Alur Kerja, pilih Alur Kerja.

      Pada halaman Alur Kerja , pilih alur kerja kosong untuk membuka perancang.

    • Untuk Aplikasi logika konsumsi, pada menu bilah sisi sumber daya, di bawah Alat Pengembangan, pilih perancang untuk membuka alur kerja.

  2. Di bar alat desainer, pilih Parameter.

    Cuplikan layar memperlihatkan portal Microsoft Azure dengan perancang alur kerja terbuka dan Parameter pada toolbar perancang disorot.

  3. Di panel Parameter, pilih Buat parameter.

  4. Berikan informasi berikut tentang parameter untuk dibuat:

    Properti Wajib Deskripsi
    Nama Ya Nama untuk parameter yang akan dibuat.
    Jenis Ya Jenis data untuk parameter, seperti Array, Bool, Float, Int, Object, dan String.

    Catatan: Pada alur kerja logic app standar, tipe data yang aman, seperti securestring dan secureobject, tidak didukung.
    Nilai (Standar) Ya Nilai dari parameter tersebut.

    Di Alur kerja aplikasi logika standar, tentukan nilai parameter. Logika alur kerja, informasi koneksi, dan nilai parameter tidak ada di satu lokasi. Perancang harus dapat menyelesaikan nilai parameter sebelum memuat alur kerja.
    Nilai Default (Konsumsi) Ya Nilai default untuk parameter. Anda harus menentukan nilai parameter default. Logika alur kerja, informasi koneksi, dan nilai parameter tidak ada di satu lokasi. Perancang harus dapat menyelesaikan nilai parameter sebelum memuat alur kerja.

    Penting: Untuk tipe data Secure Object dan Secure String, hindari pengaturan nilai default karena nilai disimpan sebagai teks biasa.
    Nilai Aktual (Konsumsi) Tidak. Nilai sebenarnya untuk parameter.

    Contoh berikut menunjukkan definisi untuk parameter string:

    Cuplikan layar memperlihatkan portal Microsoft Azure dengan perancang alur kerja dan panel Parameter dengan contoh definisi parameter.

  5. Setelah selesai, tutup panel Parameter . Pastikan untuk menyimpan alur kerja sehingga Anda menyimpan definisi parameter baru.

Untuk mereferensikan parameter dari pemicu atau tindakan dalam alur kerja apa pun untuk aplikasi logika yang sama, ikuti langkah-langkah berikut:

  1. Di perancang, buka alur kerja yang Anda inginkan, dan pilih pemicu atau tindakan.

  2. Di panel informasi, pada tab Parameter , di properti tempat Anda ingin menggunakan parameter, pilih di dalam kotak edit properti tersebut. Pilih ikon kilat untuk membuka daftar konten dinamis.

  3. Dari daftar tersebut, di bawah Parameter, pilih parameter yang anda buat sebelumnya.

    Cuplikan layar memperlihatkan parameter yang dibuat dalam daftar konten dinamis.

Untuk melihat atau mengedit parameter di aplikasi logika yang sama:

  1. Buka alur kerja di perancang alur kerja. Untuk aplikasi logic Konsumsi, pilihAlat Pengembangan>Perancang aplikasi Logika. Untuk aplikasi logika Standar, pilih Alur Kerja, lalu pilih alur kerja untuk membuka perancang.

  2. Di bar alat desainer, pilih Parameter.

    Panel Parameter terbuka dan menampilkan semua parameter yang Anda tentukan dalam aplikasi logika tersebut.

  • Hanya alur kerja standar: Untuk melihat atau mengedit di JSON massal, pada menu bilah sisi sumber daya, pilih Parameter. Pada panel Parameter , pilih Edit di JSON.

    Tampilan JSON Parameter membuka dan menampilkan semua parameter yang Anda tentukan dari alur kerja di dalam aplikasi logika itu.

Visual Studio Code

Prosedur ini menjelaskan cara bekerja dengan parameter untuk alur kerja aplikasi logika Standar menggunakan Visual Studio Code.

  1. Dalam file JSON level-akar proyek yang dinamai parameters.json, tentukan semua parameter dan nilainya. File ini memiliki objek yang mencakup pasangan kunci-nilai. Setiap kunci adalah nama untuk setiap parameter. Setiap nilai adalah struktur untuk parameter . Setiap struktur perlu mencakup deklarasi type dan value.

    Penting

    File parameters.json Anda harus menentukan dan menyertakan semua parameter dan nilainya yang Anda referensikan atau gunakan di tempat lain dalam proyek Anda. Persyaratan ini mencakup definisi dan koneksi alur kerja.

    Contoh berikut menunjukkan file parameter dasar:

    {
        "responseString": { 
            "type": "string", 
            "value": "hello" 
        },
        "functionAuth": { 
            "type": "object", 
            "value": { 
                "type": "QueryString", 
                "name": "Code", 
                "value": "@appsetting('<AzureFunctionsOperation-FunctionAppKey>')" 
            }
        }
     }
    

    Catatan

    Dalam file parameters.json, @appsetting adalah satu-satunya jenis ekspresi yang valid.

  2. Untuk mereferensikan parameter dalam input pemicu atau tindakan Anda, gunakan ekspresi @parameters('<parameter-name>').

Parameterisasi berkas koneksi

Untuk memparameterkan file sambungan.json Anda, ganti nilai untuk literal, seperti ConnectionRuntimeUrl, dengan ekspresi parameters() tunggal, misalnya, @parameters('api-runtimeUrl'). Dalam file connections.json satu-satunya jenis ekspresi yang valid adalah @parameters dan @appsetting.

Penting

Jika Anda membuat parameter file connections.json, selama pengembangan, pengalaman desainer menjadi terbatas, baik secara lokal maupun di portal Microsoft Azure. Jika Anda perlu menggunakan perancang untuk pengembangan, gunakan file connections.json yang tidak diparameterisasi sebagai gantinya. Kemudian, dalam alur penyebaran Anda, ganti dengan file yang diparameterkan. Runtime masih berfungsi dengan parameterisasi. Peningkatan untuk desainer sedang dikembangkan.

Contoh berikut menunjukkan file berparameter connections.json yang menggunakan pengaturan aplikasi dan parameter. File sampel ini menggunakan parameter untuk objek autentikasi kompleks blob_auth dan pengaturan aplikasi untuk nilai lainnya.

Anda ingin menggunakan parameter jika memungkinkan. Karena pengaturan aplikasi dihasilkan selama penyebaran dan lebih mudah diisi secara dinamis dalam alur pengembangan, Anda harus menggunakan pengaturan aplikasi atas parameter dalam skenario ini. Dalam hal ini, Anda dapat menggunakan parameter untuk objek autentikasi karena Anda tidak mungkin mereferensikan parameter dalam alur kerja Anda:

{
   "serviceProviderConnections": {
      "serviceBus": {
         "parameterValues": {
            "connectionString": "@appsetting('serviceBus_connectionString')"
        },
        "serviceProvider": {
           "id": "/serviceProviders/serviceBus"
        },
        "displayName": "servicebus"
     }
   },
   "managedApiConnections": {
      "azureblob": {
         "api": {
            "id": "/subscriptions/@{appsetting('WORKFLOWS_SUBSCRIPTION_ID')}/providers/Microsoft.Web/locations/@{appsetting('WORKFLOWS_LOCATION_NAME')}/managedApis/azureblob"
         },
         "connection": {
            "id": "/subscriptions/@{appsetting('WORKFLOWS_SUBSCRIPTION_ID')}/resourceGroups/@{appsetting('WORKFLOWS_RESOURCE_GROUP_NAME')}/providers/Microsoft.Web/connections/azureblob"
         },
         "connectionRuntimeUrl": "@appsetting('BLOB_CONNECTION_RUNTIMEURL')",
         "authentication": "@parameters('blob_auth')"
      }
   }
}

Catatan

Saat Anda memiliki ekspresi yang sejajar dengan teks biasa, pastikan untuk menggunakan format terinterpolasi untuk ekspresi tersebut dengan mengapit ekspresi tersebut dengan kurung kurawal ({}). Format ini membantu menghindari masalah penguraian.

Misalnya, jika Anda memiliki "<text>/@<function-name>('<parameter-name>')/<text>", gunakan versi berikut sebagai gantinya: "<text>/@{<function-name>('<parameter-name>')}/<text>".

Untuk informasi selengkapnya, lihat Pertimbangan untuk menggunakan fungsi.

Mengelola file parameter

Biasanya, Anda perlu mengelola beberapa versi file parameter. Anda mungkin menggunakan nilai yang ditargetkan untuk lingkungan penyebaran yang berbeda, seperti pengembangan, pengujian, dan produksi. Mengelola file parameter ini sering kali berjalan seperti mengelola file parameter templat ARM. Saat Anda menyebarkan ke lingkungan tertentu, Anda mempromosikan file parameter yang sesuai, umumnya melalui alur untuk Azure DevOps.

Untuk mengganti file parameter secara dinamis menggunakan Azure CLI, jalankan perintah berikut:

az functionapp deploy --resource-group MyResourceGroup --name MyLogicApp --src-path C:\parameters.json --type static --target-path parameters.json

Jika Anda memiliki proyek aplikasi logika berbasis NuGet, Anda harus memperbarui file proyek (<logic-app-name.csproj>) untuk menyertakan file parameter dalam output build, misalnya:

<ItemGroup>
  <None Update="parameters.json">
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
  </None>
</ItemGroup>

Catatan

Saat ini, kemampuan untuk mengganti file parameter secara dinamis tidak tersedia di portal Microsoft Azure atau perancang alur kerja.

Untuk informasi selengkapnya tentang menyiapkan aplikasi logika Anda untuk penyebaran DevOps, lihat artikel berikut ini:

Mengelola pengaturan aplikasi

Di Aplikasi logika standar, pengaturan aplikasi berisi opsi konfigurasi global untuk semua alur kerja di aplikasi logika yang sama. Saat Anda menjalankan alur kerja secara lokal di Visual Studio Code, Anda dapat mengakses pengaturan aplikasi ini dapat sebagai variabel lingkungan lokal di file local.settings.json. Anda kemudian dapat mereferensikan pengaturan aplikasi ini di parameter Anda.

Bagian berikut menjelaskan cara menambahkan, memperbarui, atau menghapus pengaturan aplikasi untuk Visual Studio Code, portal Microsoft Azure, Azure CLI, dan templat ARM (Bicep).

Meninjau pengaturan aplikasi menggunakan portal Microsoft Azure

Untuk meninjau pengaturan aplikasi untuk aplikasi logika Anda di portal Microsoft Azure, ikuti langkah berikut:

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

  2. Pada menu bilah sisi sumber daya, di bawah Pengaturan, pilih Variabel lingkungan.

  3. Pada halaman Variabel lingkungan , pada tab Pengaturan aplikasi , tinjau pengaturan aplikasi untuk aplikasi logika Anda.

  4. Untuk menampilkan semua nilai, pilih Tampilkan Nilai. Atau, untuk menampilkan satu nilai, pilih nilai tersebut.

Untuk menambahkan pengaturan baru, ikuti langkah berikut:

  1. Di bawah Pengaturan aplikasi, pilih + Tambahkan.

  2. Untuk Nama, masukkan kunci atau nama untuk pengaturan baru Anda.

  3. Untuk Nilai, masukkan nilai untuk pengaturan baru Anda.

  4. Jika perlu, pilih Pengaturan slot penyebaran.

  5. Jika Anda siap membuat pasangan kunci-nilai baru, pilih Terapkan.

Meninjau pengaturan aplikasi menggunakan Azure CLI

Untuk mengulas pengaturan aplikasi Anda saat ini menggunakan Azure CLI, jalankan perintah, az logicapp config appsettings list. Pastikan perintah Anda menyertakan parameter --name -n dan --resource-group -g, misalnya:

az logicapp config appsettings list --name MyLogicApp --resource-group MyResourceGroup

Untuk menambahkan atau memperbarui pengaturan aplikasi menggunakan Azure CLI, jalankan perintah az logicapp config appsettings set. Pastikan bahwa perintah Anda mencakup parameter --name -n and --resource-group -g. Misalnya, perintah berikut membuat pengaturan dengan kunci bernama CUSTOM_LOGIC_APP_SETTING dengan nilai 12345:

az logicapp config appsettings set --name MyLogicApp --resource-group MyResourceGroup --settings CUSTOM_LOGIC_APP_SETTING=12345 

Meninjau dan menentukan pengaturan aplikasi dalam file Resource Manager atau Bicep

Untuk meninjau dan menentukan pengaturan aplikasi Anda dalam templat ARM atau file Bicep, temukan definisi sumber daya aplikasi logika Anda, dan perbarui appSettings objek JSON. Untuk definisi sumber daya lengkap, lihat referensi templat ARM.

Contoh ini memperlihatkan pengaturan file untuk templat ARM atau file Bicep:

"appSettings": [
    {
        "name": "string",
        "value": "string"
    },
    {
        "name": "string",
        "value": "string"
    },
    <...>
],