Microsoft. Penyebaran sumber dayaSkrip

  • Terbaru
  • 2023-08-01
  • 2020-10-01
  • pratinjau 2019-10-01

Komentar

Untuk mempelajari tentang menjalankan skrip selama penyebaran, lihat Menggunakan skrip penyebaran di Bicep atau Menggunakan skrip penyebaran dalam templat ARM.

Definisi sumber daya Bicep

Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:

  • Grup sumber daya - Lihat perintah penyebaran grup sumber daya

Untuk daftar properti yang diubah di setiap versi API, lihat mengubah log.

Contoh Penggunaan

Sampel Bicep

Contoh dasar penyebaran Skrip Penyebaran Sumber Daya.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource deploymentScript 'Microsoft.Resources/deploymentScripts@2020-10-01' = {
  name: resourceName
  location: location
  kind: 'AzurePowerShell'
  properties: {
    azPowerShellVersion: '8.3'
    cleanupPreference: 'Always'
    retentionInterval: 'P1D'
    scriptContent: '''		$output = ''Hello''
		Write-Output $output
		$DeploymentScriptOutputs = @{}
		$DeploymentScriptOutputs[''text''] = $output
'''
    timeout: 'P1D'
  }
}

Modul Terverifikasi Azure

Modul Terverifikasi Azure berikut dapat digunakan untuk menyebarkan jenis sumber daya ini.

Modul Deskripsi
Skrip Penyebaran Modul Sumber Daya AVM untuk Skrip Penerapan

Sampel Mulai Cepat Azure

Templat Mulai Cepat Azure berikut ini berisi sampel Bicep untuk menyebarkan jenis sumber daya ini.

File Bisep Deskripsi
Azure Container Service (AKS) dengan Helm Menyebarkan kluster terkelola dengan Azure Container Service (AKS) dengan Helm
Azure Image Builder dengan Azure Windows Baseline Membuat lingkungan Azure Image Builder dan membangun gambar Windows Server dengan Windows Update terbaru dan Azure Windows Baseline yang diterapkan.
Membuat gambar kontainer dengan tugas ACR Templat ini menggunakan DeploymentScript untuk mengatur ACR untuk membangun gambar kontainer Anda dari repositori kode.
Mengonfigurasi layanan Dev Box Templat ini akan membuat semua sumber daya admin Dev Box sesuai panduan mulai cepat Dev Box (/azure/dev-box/quickstart-create-dev-box). Anda dapat melihat semua sumber daya yang dibuat, atau langsung masuk ke DevPortal.microsoft.com untuk membuat Dev Box pertama Anda.
Menyalin file dari uri ke kontainer penyimpanan blob Modul ini mengunduh file dari uri dan menyalinnya ke kontainer blob Azure storageAccount. StorageAccount harus sudah ada dan file sumber harus sudah dipentaskan ke uri.
Mulai cepat Membuat blob untuk alat data salin pabrik data Templat ini membuat penyimpanan blob dan mengunggah file untuk mulai cepat alat salin data
Membuat Skrip Penyebaran dengan input kompleks & output Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az CLI
Membuat Skrip Penyebaran dengan input kompleks & output Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az PowerShell
Membuat situs WordPress Templat ini membuat situs WordPress di Container Instance
Buat AKS dengan Prometheus dan Grafana dengan tautan privae Ini akan membuat Azure grafana, AKS dan menginstal Prometheus, toolkit pemantauan dan pemberitahuan sumber terbuka, pada kluster Azure Kubernetes Service (AKS). Kemudian Anda menggunakan titik akhir privat terkelola Azure Managed Grafana untuk menyambungkan ke server Prometheus ini dan menampilkan data Prometheus di dasbor Grafana
Membuat pekerjaan Pembersihan Azure Machine Learning Templat ini membuat pekerjaan Azure Machine Learning Sweep untuk penyetelan hyperparameter.
Membuat Azure Virtual Network Manager dan sampel VNET Templat ini menyebarkan Azure Virtual Network Manager dan sampel jaringan virtual ke dalam grup sumber daya bernama. Ini mendukung beberapa topologi konektivitas dan jenis keanggotaan grup jaringan.
Membuat Server SFTP sesuai permintaan dengan penyimpanan persisten Templat ini menunjukkan server SFTP sesuai permintaan menggunakan Azure Container Instance (ACI).
Membuat Application Gateway dengan Sertifikat Templat ini menunjukkan cara membuat sertifikat yang ditandatangani sendiri Key Vault, lalu referensi dari Application Gateway.
Membuat Aplikasi dan Lingkungan Kontainer dengan Registri Buat Lingkungan Aplikasi Kontainer dengan Aplikasi Kontainer dasar dari Azure Container Registry. Ini juga menyebarkan Ruang Kerja Analitik Log untuk menyimpan log.
Membuat aplikasi layanan mikro Dapr menggunakan Container Apps Buat aplikasi layanan mikro Dapr menggunakan Aplikasi Kontainer.
Membuat aplikasi servicebus pub-sub Dapr menggunakan Container Apps Buat aplikasi dapr pub-sub servicebus menggunakan Container Apps.
Menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana Templat ini menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana untuk dijalankan di Azure.
Menyebarkan situs web statis Menyebarkan situs web statis dengan akun penyimpanan cadangan
hub FinOps Templat ini membuat instans hub FinOps baru, termasuk Data Explorer, penyimpanan Data Lake, dan Data Factory.
Front Door Standard/Premium dengan asal situs web statis Templat ini membuat Front Door Standard/Premium dan situs web statis Azure Storage, dan mengonfigurasi Front Door untuk mengirim lalu lintas ke situs web statis.
Mengimpor Gambar Kontainer ke ACR Templat ini memanfaatkan modul Impor ACR dari registri bicep untuk mengimpor gambar kontainer publik ke Azure Container Registry.
Lainnya dimungkinkan dengan Azure Data Factory - Satu klik untuk mencoba Azure Data Factory Templat ini membuat alur pabrik data untuk aktivitas salin dari Azure Blob ke Azure Blob lain
Network Secured Agent dengan Identitas Terkelola Pengguna Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan isolasi jaringan virtual menggunakan autentikasi Identitas Terkelola Pengguna untuk koneksi AI Service/AOAI dan tautan jaringan privat untuk menghubungkan agen ke data aman Anda.
Penyiapan Agen Standar Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan penyiapan standar, yang berarti dengan autentikasi identitas terkelola untuk koneksi proyek/hub dan akses internet publik diaktifkan. Agen menggunakan sumber daya pencarian dan penyimpanan penyewa tunggal milik pelanggan. Dengan penyiapan ini, Anda memiliki kontrol dan visibilitas penuh atas sumber daya ini, tetapi Anda akan dikenakan biaya berdasarkan penggunaan Anda.
lingkungan Pengujian untuk Azure Firewall Premium Templat ini membuat Azure Firewall Premium dan Firewall Policy dengan fitur premium seperti Intrusion Inspection Detection (IDPS), inspeksi TLS, dan pemfilteran Kategori Web
Menggunakan skrip penyebaran untuk membuat objek Azure AD Sampel ini menggunakan skrip penyebaran untuk membuat objek di Azure Active Directory.

Format sumber daya

Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan Bicep berikut ke templat Anda.

resource symbolicname 'Microsoft.Resources/deploymentScripts@2023-08-01' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  tags: {
    {customized property}: 'string'
  }
  kind: 'string'
  // For remaining properties, see Microsoft.Resources/deploymentScripts objects
}

Objek Microsoft.Resources/deploymentScripts

Atur properti jenis untuk menentukan jenis objek.

UntukAzureCLI , gunakan:

{
  kind: 'AzureCLI'
  properties: {
    arguments: 'string'
    azCliVersion: 'string'
    cleanupPreference: 'string'
    containerSettings: {
      containerGroupName: 'string'
      subnetIds: [
        {
          id: 'string'
          name: 'string'
        }
      ]
    }
    environmentVariables: [
      {
        name: 'string'
        secureValue: 'string'
        value: 'string'
      }
    ]
    forceUpdateTag: 'string'
    primaryScriptUri: 'string'
    retentionInterval: 'string'
    scriptContent: 'string'
    storageAccountSettings: {
      storageAccountKey: 'string'
      storageAccountName: 'string'
    }
    supportingScriptUris: [
      'string'
    ]
    timeout: 'string'
  }
}

Untuk AzurePowerShell, gunakan:

{
  kind: 'AzurePowerShell'
  properties: {
    arguments: 'string'
    azPowerShellVersion: 'string'
    cleanupPreference: 'string'
    containerSettings: {
      containerGroupName: 'string'
      subnetIds: [
        {
          id: 'string'
          name: 'string'
        }
      ]
    }
    environmentVariables: [
      {
        name: 'string'
        secureValue: 'string'
        value: 'string'
      }
    ]
    forceUpdateTag: 'string'
    primaryScriptUri: 'string'
    retentionInterval: 'string'
    scriptContent: 'string'
    storageAccountSettings: {
      storageAccountKey: 'string'
      storageAccountName: 'string'
    }
    supportingScriptUris: [
      'string'
    ]
    timeout: 'string'
  }
}

Nilai Properti

Microsoft.Resources/deploymentScripts

Nama Deskripsi Nilai
identitas Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. managedServiceIdentity
jenis Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. 'AzureCLI'
'AzurePowerShell' (diperlukan)
lokasi Lokasi geografis tempat sumber daya berada string (diperlukan)
Nama Nama sumber daya tali

Kendala:
Panjang min = 1
Panjang maksimum = 90 (diperlukan)
Tags Tag sumber daya Kamus nama dan nilai tag. Lihat Tag dalam templat

AzureCliScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzureCLI' (diperlukan)
Properti Properti objek skrip Azure CLI. AzureCliScriptProperties (diperlukan)

AzureCliScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azCliVersion Versi modul Azure CLI yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

AzurePowerShellScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzurePowerShell' (diperlukan)
Properti Properti objek skrip Azure PowerShell. AzurePowerShellScriptProperties (diperlukan)

AzurePowerShellScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azPowerShellVersion Versi modul Azure PowerShell yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

Konfigurasi Kontainer

Nama Deskripsi Nilai
containerGroupName Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. tali

Kendala:
Panjang min = 1
Panjang maksimum = 63
subnetIds ID sumber daya subnet untuk grup kontainer. ContainerGroupSubnetId[]

ContainerGroupSubnetId

Nama Deskripsi Nilai
Id ID sumber daya subnet. string (diperlukan)
Nama Nama yang mudah diingat untuk subnet. string

Variabel Lingkungan

Nama Deskripsi Nilai
Nama Nama variabel lingkungan. string (diperlukan)
Nilai aman Nilai variabel lingkungan yang aman. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
nilai Nilai variabel lingkungan. string

Identitas Layanan Terkelola

Nama Deskripsi Nilai
jenis Jenis identitas terkelola. 'Ditetapkan Pengguna'
identitasYangDitetapkanPengguna Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nama Deskripsi Nilai

Konfigurasi Akun Penyimpanan

Nama Deskripsi Nilai
kunciAkunPenyimpanan Kunci akses akun penyimpanan. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
namaAkunPenyimpanan (storageAccountName) Nama akun penyimpanan. string

TrackedResourceTags

Nama Deskripsi Nilai

IdentitasDitugaskanPengguna

Nama Deskripsi Nilai

Definisi sumber daya templat ARM

Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:

Contoh Penggunaan

Templat Pemulaan Cepat Azure

Templat Mulai Cepat Azure berikut ini menyebarkan jenis sumber daya ini.

Templat Deskripsi
Azure Container Service (AKS) dengan Helm

Sebarkan ke Azure
Menyebarkan kluster terkelola dengan Azure Container Service (AKS) dengan Helm
Azure Image Builder dengan Azure Windows Baseline

Sebarkan ke Azure
Membuat lingkungan Azure Image Builder dan membangun gambar Windows Server dengan Windows Update terbaru dan Azure Windows Baseline yang diterapkan.
Membuat gambar kontainer dengan tugas ACR

Sebarkan ke Azure
Templat ini menggunakan DeploymentScript untuk mengatur ACR untuk membangun gambar kontainer Anda dari repositori kode.
Mengonfigurasi layanan Dev Box

Sebarkan ke Azure
Templat ini akan membuat semua sumber daya admin Dev Box sesuai panduan mulai cepat Dev Box (/azure/dev-box/quickstart-create-dev-box). Anda dapat melihat semua sumber daya yang dibuat, atau langsung masuk ke DevPortal.microsoft.com untuk membuat Dev Box pertama Anda.
Menyalin file dari uri ke kontainer penyimpanan blob

Sebarkan ke Azure
Modul ini mengunduh file dari uri dan menyalinnya ke kontainer blob Azure storageAccount. StorageAccount harus sudah ada dan file sumber harus sudah dipentaskan ke uri.
Mulai cepat Membuat blob untuk alat data salin pabrik data

Sebarkan ke Azure
Templat ini membuat penyimpanan blob dan mengunggah file untuk mulai cepat alat salin data
Membuat Skrip Penyebaran dengan input kompleks & output

Sebarkan ke Azure
Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az CLI
Membuat Skrip Penyebaran dengan input kompleks & output

Sebarkan ke Azure
Templat ini menunjukkan praktik terbaik untuk meneruskan dan membaca input, output, dan log yang kompleks ke Skrip Penyebaran Az PowerShell
Membuat situs WordPress

Sebarkan ke Azure
Templat ini membuat situs WordPress di Container Instance
Buat AKS dengan Prometheus dan Grafana dengan tautan privae

Sebarkan ke Azure
Ini akan membuat Azure grafana, AKS dan menginstal Prometheus, toolkit pemantauan dan pemberitahuan sumber terbuka, pada kluster Azure Kubernetes Service (AKS). Kemudian Anda menggunakan titik akhir privat terkelola Azure Managed Grafana untuk menyambungkan ke server Prometheus ini dan menampilkan data Prometheus di dasbor Grafana
Membuat pekerjaan Pembersihan Azure Machine Learning

Sebarkan ke Azure
Templat ini membuat pekerjaan Azure Machine Learning Sweep untuk penyetelan hyperparameter.
Membuat Azure Virtual Network Manager dan sampel VNET

Sebarkan ke Azure
Templat ini menyebarkan Azure Virtual Network Manager dan sampel jaringan virtual ke dalam grup sumber daya bernama. Ini mendukung beberapa topologi konektivitas dan jenis keanggotaan grup jaringan.
Membuat Server SFTP sesuai permintaan dengan penyimpanan persisten

Sebarkan ke Azure
Templat ini menunjukkan server SFTP sesuai permintaan menggunakan Azure Container Instance (ACI).
Membuat Application Gateway dengan Sertifikat

Sebarkan ke Azure
Templat ini menunjukkan cara membuat sertifikat yang ditandatangani sendiri Key Vault, lalu referensi dari Application Gateway.
Membuat kunci ssh dan menyimpan di KeyVault

Sebarkan ke Azure
Templat ini menggunakan sumber daya deploymentScript untuk menghasilkan kunci ssh dan menyimpan kunci privat di keyVault.
Membuat Aplikasi dan Lingkungan Kontainer dengan Registri

Sebarkan ke Azure
Buat Lingkungan Aplikasi Kontainer dengan Aplikasi Kontainer dasar dari Azure Container Registry. Ini juga menyebarkan Ruang Kerja Analitik Log untuk menyimpan log.
Membuat aplikasi layanan mikro Dapr menggunakan Container Apps

Sebarkan ke Azure
Buat aplikasi layanan mikro Dapr menggunakan Aplikasi Kontainer.
Membuat aplikasi servicebus pub-sub Dapr menggunakan Container Apps

Sebarkan ke Azure
Buat aplikasi dapr pub-sub servicebus menggunakan Container Apps.
Menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana

Sebarkan ke Azure
Templat ini menyebarkan aplikasi layanan mikro Azure Spring Apps sederhana untuk dijalankan di Azure.
Menyebarkan situs web statis

Sebarkan ke Azure
Menyebarkan situs web statis dengan akun penyimpanan cadangan
hub FinOps

Sebarkan ke Azure
Templat ini membuat instans hub FinOps baru, termasuk Data Explorer, penyimpanan Data Lake, dan Data Factory.
Front Door Standard/Premium dengan asal situs web statis

Sebarkan ke Azure
Templat ini membuat Front Door Standard/Premium dan situs web statis Azure Storage, dan mengonfigurasi Front Door untuk mengirim lalu lintas ke situs web statis.
Aplikasi Fungsi pada Paket Konsumsi Linux dengan Build Jarak Jauh

Sebarkan ke Azure
Templat ini menyediakan aplikasi fungsi pada paket Konsumsi Linux dan melakukan build jarak jauh selama penyebaran kode. Aplikasi berjalan sesuai permintaan dan Anda ditagih per eksekusi, tanpa komitmen sumber daya yang berdiri.
Mengimpor Gambar Kontainer ke ACR

Sebarkan ke Azure
Templat ini memanfaatkan modul Impor ACR dari registri bicep untuk mengimpor gambar kontainer publik ke Azure Container Registry.
Impor Blob VHD dari URL Arsip ZIP

Sebarkan ke Azure
Menyebarkan Komputer Virtual berdasarkan gambar disk khusus mengharuskan untuk mengimpor file VHD ke Akun Penyimpanan. Dalam kasus ada beberapa file VHD yang dikompresi dalam satu ZIP dan Anda mendapatkan URL untuk mengambil arsip ZIP, templat ARM ini akan memudahkan pekerjaan: Unduh, Ekstrak, dan Impor ke dalam Kontainer Blob Akun Penyimpanan yang ada.
min.io Azure Gateway

Sebarkan ke Azure
Penyebaran Azure Gateway min.io sepenuhnya privat untuk menyediakan API penyimpanan yang mematuhi S3 yang didukung oleh penyimpanan blob
Lainnya dimungkinkan dengan Azure Data Factory - Satu klik untuk mencoba Azure Data Factory

Sebarkan ke Azure
Templat ini membuat alur pabrik data untuk aktivitas salin dari Azure Blob ke Azure Blob lain
Network Secured Agent dengan Identitas Terkelola Pengguna

Sebarkan ke Azure
Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan isolasi jaringan virtual menggunakan autentikasi Identitas Terkelola Pengguna untuk koneksi AI Service/AOAI dan tautan jaringan privat untuk menghubungkan agen ke data aman Anda.
Penyiapan Agen Standar

Sebarkan ke Azure
Kumpulan templat ini menunjukkan cara menyiapkan Azure AI Agent Service dengan penyiapan standar, yang berarti dengan autentikasi identitas terkelola untuk koneksi proyek/hub dan akses internet publik diaktifkan. Agen menggunakan sumber daya pencarian dan penyimpanan penyewa tunggal milik pelanggan. Dengan penyiapan ini, Anda memiliki kontrol dan visibilitas penuh atas sumber daya ini, tetapi Anda akan dikenakan biaya berdasarkan penggunaan Anda.
lingkungan Pengujian untuk Azure Firewall Premium

Sebarkan ke Azure
Templat ini membuat Azure Firewall Premium dan Firewall Policy dengan fitur premium seperti Intrusion Inspection Detection (IDPS), inspeksi TLS, dan pemfilteran Kategori Web
Menggunakan skrip penyebaran untuk membuat objek Azure AD

Sebarkan ke Azure
Sampel ini menggunakan skrip penyebaran untuk membuat objek di Azure Active Directory.

Format sumber daya

Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan JSON berikut ke templat Anda.

{
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "name": "string",
  "tags": {
    "{customized property}": "string"
  },
  "kind": "string"
  // For remaining properties, see Microsoft.Resources/deploymentScripts objects
}

Objek Microsoft.Resources/deploymentScripts

Atur properti jenis untuk menentukan jenis objek.

UntukAzureCLI , gunakan:

{
  "kind": "AzureCLI",
  "properties": {
    "arguments": "string",
    "azCliVersion": "string",
    "cleanupPreference": "string",
    "containerSettings": {
      "containerGroupName": "string",
      "subnetIds": [
        {
          "id": "string",
          "name": "string"
        }
      ]
    },
    "environmentVariables": [
      {
        "name": "string",
        "secureValue": "string",
        "value": "string"
      }
    ],
    "forceUpdateTag": "string",
    "primaryScriptUri": "string",
    "retentionInterval": "string",
    "scriptContent": "string",
    "storageAccountSettings": {
      "storageAccountKey": "string",
      "storageAccountName": "string"
    },
    "supportingScriptUris": [ "string" ],
    "timeout": "string"
  }
}

Untuk AzurePowerShell, gunakan:

{
  "kind": "AzurePowerShell",
  "properties": {
    "arguments": "string",
    "azPowerShellVersion": "string",
    "cleanupPreference": "string",
    "containerSettings": {
      "containerGroupName": "string",
      "subnetIds": [
        {
          "id": "string",
          "name": "string"
        }
      ]
    },
    "environmentVariables": [
      {
        "name": "string",
        "secureValue": "string",
        "value": "string"
      }
    ],
    "forceUpdateTag": "string",
    "primaryScriptUri": "string",
    "retentionInterval": "string",
    "scriptContent": "string",
    "storageAccountSettings": {
      "storageAccountKey": "string",
      "storageAccountName": "string"
    },
    "supportingScriptUris": [ "string" ],
    "timeout": "string"
  }
}

Nilai Properti

Microsoft.Resources/deploymentScripts

Nama Deskripsi Nilai
apiVersi Versi api '2023-08-01'
identitas Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. managedServiceIdentity
jenis Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. 'AzureCLI'
'AzurePowerShell' (diperlukan)
lokasi Lokasi geografis tempat sumber daya berada string (diperlukan)
Nama Nama sumber daya tali

Kendala:
Panjang min = 1
Panjang maksimum = 90 (diperlukan)
Tags Tag sumber daya Kamus nama dan nilai tag. Lihat Tag dalam templat
jenis Jenis sumber daya 'Microsoft.Resources/deploymentScripts'

AzureCliScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzureCLI' (diperlukan)
Properti Properti objek skrip Azure CLI. AzureCliScriptProperties (diperlukan)

AzureCliScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azCliVersion Versi modul Azure CLI yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

AzurePowerShellScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzurePowerShell' (diperlukan)
Properti Properti objek skrip Azure PowerShell. AzurePowerShellScriptProperties (diperlukan)

AzurePowerShellScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azPowerShellVersion Versi modul Azure PowerShell yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

Konfigurasi Kontainer

Nama Deskripsi Nilai
containerGroupName Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. tali

Kendala:
Panjang min = 1
Panjang maksimum = 63
subnetIds ID sumber daya subnet untuk grup kontainer. ContainerGroupSubnetId[]

ContainerGroupSubnetId

Nama Deskripsi Nilai
Id ID sumber daya subnet. string (diperlukan)
Nama Nama yang mudah diingat untuk subnet. string

Variabel Lingkungan

Nama Deskripsi Nilai
Nama Nama variabel lingkungan. string (diperlukan)
Nilai aman Nilai variabel lingkungan yang aman. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
nilai Nilai variabel lingkungan. string

Identitas Layanan Terkelola

Nama Deskripsi Nilai
jenis Jenis identitas terkelola. 'Ditetapkan Pengguna'
identitasYangDitetapkanPengguna Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nama Deskripsi Nilai

Konfigurasi Akun Penyimpanan

Nama Deskripsi Nilai
kunciAkunPenyimpanan Kunci akses akun penyimpanan. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
namaAkunPenyimpanan (storageAccountName) Nama akun penyimpanan. string

TrackedResourceTags

Nama Deskripsi Nilai

IdentitasDitugaskanPengguna

Nama Deskripsi Nilai

Definisi sumber daya Terraform (penyedia AzAPI)

Jenis sumber daya deploymentScripts dapat disebarkan dengan operasi yang menargetkan:

  • Grup sumber daya Untuk daftar properti yang diubah di setiap versi API, lihat log perubahan.

Contoh Penggunaan

Sampel Terraform

Contoh dasar penyebaran Skrip Penyebaran Sumber Daya.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "deploymentScript" {
  type      = "Microsoft.Resources/deploymentScripts@2020-10-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    kind = "AzurePowerShell"
    properties = {
      azPowerShellVersion  = "8.3"
      cleanupPreference    = "Always"
      environmentVariables = null
      retentionInterval    = "P1D"
      scriptContent        = "\t\t$output = 'Hello'\n\t\tWrite-Output $output\n\t\t$DeploymentScriptOutputs = @{}\n\t\t$DeploymentScriptOutputs['text'] = $output\n"
      supportingScriptUris = null
      timeout              = "P1D"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Format sumber daya

Untuk membuat sumber daya Microsoft.Resources/deploymentScripts, tambahkan Terraform berikut ke templat Anda.

resource "azapi_resource" "symbolicname" {
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  location = "string"
  name = "string"
  tags = {
    {customized property} = "string"
  }
  kind = "string"
  // For remaining properties, see Microsoft.Resources/deploymentScripts objects
}

Objek Microsoft.Resources/deploymentScripts

Atur properti jenis untuk menentukan jenis objek.

UntukAzureCLI , gunakan:

{
  kind = "AzureCLI"
  properties = {
    arguments = "string"
    azCliVersion = "string"
    cleanupPreference = "string"
    containerSettings = {
      containerGroupName = "string"
      subnetIds = [
        {
          id = "string"
          name = "string"
        }
      ]
    }
    environmentVariables = [
      {
        name = "string"
        secureValue = "string"
        value = "string"
      }
    ]
    forceUpdateTag = "string"
    primaryScriptUri = "string"
    retentionInterval = "string"
    scriptContent = "string"
    storageAccountSettings = {
      storageAccountKey = "string"
      storageAccountName = "string"
    }
    supportingScriptUris = [
      "string"
    ]
    timeout = "string"
  }
}

Untuk AzurePowerShell, gunakan:

{
  kind = "AzurePowerShell"
  properties = {
    arguments = "string"
    azPowerShellVersion = "string"
    cleanupPreference = "string"
    containerSettings = {
      containerGroupName = "string"
      subnetIds = [
        {
          id = "string"
          name = "string"
        }
      ]
    }
    environmentVariables = [
      {
        name = "string"
        secureValue = "string"
        value = "string"
      }
    ]
    forceUpdateTag = "string"
    primaryScriptUri = "string"
    retentionInterval = "string"
    scriptContent = "string"
    storageAccountSettings = {
      storageAccountKey = "string"
      storageAccountName = "string"
    }
    supportingScriptUris = [
      "string"
    ]
    timeout = "string"
  }
}

Nilai Properti

Microsoft.Resources/deploymentScripts

Nama Deskripsi Nilai
identitas Properti opsional. Identitas terkelola yang akan digunakan untuk skrip penyebaran ini. Saat ini, hanya MSI yang ditetapkan pengguna yang didukung. managedServiceIdentity
jenis Atur ke 'AzureCLI' untuk jenis AzureCliScript. Atur ke 'AzurePowerShell' untuk jenis AzurePowerShellScript. 'AzureCLI'
'AzurePowerShell' (diperlukan)
lokasi Lokasi geografis tempat sumber daya berada string (diperlukan)
Nama Nama sumber daya tali

Kendala:
Panjang min = 1
Panjang maksimum = 90 (diperlukan)
Tags Tag sumber daya Kamus nama dan nilai tag.
jenis Jenis sumber daya "Microsoft.Resources/deploymentScripts@2023-08-01"

AzureCliScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzureCLI' (diperlukan)
Properti Properti objek skrip Azure CLI. AzureCliScriptProperties (diperlukan)

AzureCliScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azCliVersion Versi modul Azure CLI yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

AzurePowerShellScript

Nama Deskripsi Nilai
jenis Jenis skrip. 'AzurePowerShell' (diperlukan)
Properti Properti objek skrip Azure PowerShell. AzurePowerShellScriptProperties (diperlukan)

AzurePowerShellScriptProperties

Nama Deskripsi Nilai
Argumen Argumen baris perintah untuk diteruskan ke skrip. Argumen dipisahkan oleh spasi. ex: -Name biru* -Location 'US Barat 2' string
azPowerShellVersion Versi modul Azure PowerShell yang akan digunakan. string (diperlukan)
pembersihanPreferensi Preferensi pembersihan saat eksekusi skrip masuk dalam status terminal. Pengaturan default adalah 'Always'. 'Selalu'
'Kedaluwarsa'
'OnSuccess'
containerSettings Pengaturan kontainer. ContainerConfiguration
variabelLingkungan Variabel lingkungan untuk diteruskan ke skrip. Variabel Lingkungan[]
forceUpdateTag Mendapatkan atau mengatur bagaimana skrip penyebaran harus dipaksa untuk dijalankan meskipun sumber daya skrip belum berubah. Dapat berupa stempel waktu saat ini atau GUID. string
primaryScriptUri Uri untuk skrip. Ini adalah titik masuk untuk skrip eksternal. string
retentionInterval Interval di mana layanan mempertahankan sumber daya skrip setelah mencapai status terminal. Sumber daya akan dihapus ketika durasi ini kedaluwarsa. Durasi didasarkan pada pola ISO 8601 (misalnya P1D berarti satu hari). string (diperlukan)
skripKonten Isi skrip. string
penyimpananAkunPengaturan Pengaturan Akun Penyimpanan. Konfigurasi Akun Penyimpanan
supportingScriptUris Mendukung file untuk skrip eksternal. string[]
Timeout Waktu eksekusi skrip maksimum yang diizinkan ditentukan dalam format ISO 8601. Nilai defaultnya adalah P1D string

Konfigurasi Kontainer

Nama Deskripsi Nilai
containerGroupName Nama grup kontainer, jika tidak ditentukan maka nama akan dibuat secara otomatis. Tidak menentukan 'containerGroupName' menunjukkan sistem untuk menghasilkan nama unik yang mungkin akhirnya menandai Azure Policy sebagai tidak patuh. Gunakan 'containerGroupName' saat Anda memiliki Azure Policy yang mengharapkan konvensi penamaan tertentu atau ketika Anda ingin sepenuhnya mengontrol namanya. Properti 'containerGroupName' harus panjangnya antara 1 dan 63 karakter, hanya boleh berisi huruf kecil, angka, dan tanda hubung dan tidak dapat dimulai atau diakhapi dengan tanda hubung dan tanda hubung berturut-turut tidak diperbolehkan. Untuk menentukan 'containerGroupName', tambahkan objek berikut ke properti: { "containerSettings": { "containerGroupName": "contoso-container" } }. Jika Anda tidak ingin menentukan 'containerGroupName' maka jangan tambahkan properti 'containerSettings'. tali

Kendala:
Panjang min = 1
Panjang maksimum = 63
subnetIds ID sumber daya subnet untuk grup kontainer. ContainerGroupSubnetId[]

ContainerGroupSubnetId

Nama Deskripsi Nilai
Id ID sumber daya subnet. string (diperlukan)
Nama Nama yang mudah diingat untuk subnet. string

Variabel Lingkungan

Nama Deskripsi Nilai
Nama Nama variabel lingkungan. string (diperlukan)
Nilai aman Nilai variabel lingkungan yang aman. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
nilai Nilai variabel lingkungan. string

Identitas Layanan Terkelola

Nama Deskripsi Nilai
jenis Jenis identitas terkelola. 'Ditetapkan Pengguna'
identitasYangDitetapkanPengguna Daftar identitas terkelola yang ditetapkan pengguna yang terkait dengan sumber daya. Kuncinya adalah Id sumber daya Azure dari identitas terkelola. ManagedServiceIdentityUserAssignedIdentities

ManagedServiceIdentityUserAssignedIdentities

Nama Deskripsi Nilai

Konfigurasi Akun Penyimpanan

Nama Deskripsi Nilai
kunciAkunPenyimpanan Kunci akses akun penyimpanan. tali

Kendala:
Nilai sensitif. Teruskan sebagai parameter aman.
namaAkunPenyimpanan (storageAccountName) Nama akun penyimpanan. string

TrackedResourceTags

Nama Deskripsi Nilai

IdentitasDitugaskanPengguna

Nama Deskripsi Nilai