Mengelola kredensial di Azure Automation

Aset kredensial Automation menyimpan objek yang berisi kredensial keamanan, seperti nama pengguna dan kata sandi. Runbook dan konfigurasi DSC menggunakan cmdlet yang menerima objek PSCredential untuk autentikasi. Atau, keduanya dapat mengekstrak nama pengguna dan kata sandi objek PSCredential untuk menyediakan beberapa aplikasi atau layanan yang membutuhkan autentikasi.

Catatan

Aset aman di Azure Automation mencakup informasi masuk, sertifikat, koneksi, dan variabel terenkripsi. Aset ini dienkripsi dan disimpan di Azure Automation menggunakan key unik yang dihasilkan untuk setiap akun Automation. Azure Automation menyimpan key di Key Vault yang dikelola sistem. Sebelum menyimpan aset aman, Automation memuat kunci dari Key Vault lalu menggunakannya untuk mengenkripsi aset.

Catatan

Untuk informasi tentang menampilkan atau menghapus data pribadi, lihat Permintaan Subjek Data Azure untuk GDPR. Untuk informasi selengkapnya tentang GDPR, lihat bagian GDPR di Microsoft Trust Center dan bagian GDPR dari portal Service Trust.

cmdlet PowerShell yang digunakan untuk mengakses kredensial

cmdlet dalam tabel berikut membuat dan mengelola kredensial Automation dengan PowerShell. cmdlet ini melakukan pengiriman sebagai bagian dari modul Az.

Cmdlet Deskripsi
Get-AzAutomationCredential Mengambil objek CredentialInfo yang berisi metadata tentang kredensial. cmdlet tidak mengambil objek PSCredential itu sendiri.
New-AzAutomationCredential Membuat kredensial Otomatisasi baru.
Remove-AzAutomationCredential Menghapus kredensial Otomatisasi.
Set-AzAutomationCredential Mengatur properti untuk kredensial Otomatisasi yang sudah ada.

cmdlet lain yang digunakan untuk mengakses kredensial

cmdlet dalam tabel berikut ini digunakan untuk mengakses kredensial dalam runbook dan konfigurasi DSC Anda.

Cmdlet Deskripsi
Get-AutomationPSCredential Mendapatkan objek PSCredential untuk digunakan dalam konfigurasi runbook atau DSC. Umumnya, Anda harus menggunakan cmdlet internal ini alih-alih cmdlet Get-AzAutomationCredential karena yang kedua hanya mengambil informasi kredensial. Informasi ini biasanya tidak membantu untuk meneruskan ke cmdlet lain.
Get-Credential Mendapatkan kredensial dengan perintah untuk nama pengguna dan kata sandi. cmdlet ini adalah bagian dari modul Microsoft.PowerShell.Security default. Lihat Modul default.
New-AzureAutomationCredential Membuat aset kredensial. cmdlet ini adalah bagian dari modul Azure default. Lihat Modul default.

Untuk mengambil objek PSCredential dalam kode, Anda harus mengimpor modul Orchestrator.AssetManagement.Cmdlets. Untuk informasi selengkapnya, lihat Mengelola modul di Azure Automation.

Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue

Catatan

Anda harus menghindari penggunaan variabel dalam parameter Name dari Get-AutomationPSCredential. Penggunaannya dapat mempersulit penemuan dependensi antara runbook atau konfigurasi DSC dan aset kredensial pada waktu desain.

Fungsi Python yang mengakses kredensial

Fungsi dalam tabel berikut digunakan untuk mengakses kredensial dalam runbook Python 2 dan 3. Runbook Python 3 saat ini dalam pratinjau.

Function Deskripsi
automationassets.get_automation_credential Mengambil informasi tentang aset kredensial.

Catatan

Mengimpor modul automationassets di bagian atas runbook Python Anda untuk mengakses fungsi aset.

Membuat aset kredensial baru

Anda dapat membuat aset kredensial baru menggunakan portal Microsoft Azure atau menggunakan Windows PowerShell.

Membuat aset kredensial baru dengan portal Microsoft Azure

  1. Dari akun Automation Anda, di panel sebelah kiri pilih Kredensial di Sumber Daya Bersama.

  2. Pada halaman Kredensial, pilih Tambahkan kredensial.

  3. Di panel Kredensial Baru, masukkan nama kredensial yang sesuai dengan mengikuti standar penamaan Anda.

  4. Ketik ID akses Anda di kolom Nama pengguna.

  5. Untuk kedua bidang kata sandi, masukkan key akses rahasia Anda.

    Create new credential

  6. Jika kotak autentikasi multifaktor dicentang, hapus centang.

  7. Klik Buat untuk menyimpan aset kredensial baru.

Catatan

Azure Automation tidak mendukung akun pengguna yang menggunakan autentikasi multifaktor.

Membuat aset kredensial baru dengan Windows PowerShell

Contoh berikut menunjukkan cara membuat aset kredensial Automation baru. Objek PSCredential pertama kali dibuat dengan nama dan kata sandi, lalu digunakan untuk membuat aset kredensial. Sebagai gantinya, Anda dapat menggunakan cmdlet Get-Credential untuk meminta pengguna mengetikkan nama dan kata sandi.

$user = "MyDomain\MyUser"
$pw = ConvertTo-SecureString "PassWord!" -AsPlainText -Force
$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $user, $pw
New-AzureAutomationCredential -AutomationAccountName "MyAutomationAccount" -Name "MyCredential" -Value $cred

Mendapatkan aset kredensial

Konfigurasi runbook atau DSC mengambil aset kredensial dengan cmdlet Get-AutomationPSCredential internal. cmdlet ini mendapatkan objek PSCredential yang dapat Anda gunakan dengan cmdlet yang memerlukan kredensial. Anda juga dapat mengambil properti objek kredensial untuk digunakan secara individual. Obyek ini memiliki properti untuk nama pengguna dan sandi aman.

Catatan

cmdlet Get-AzAutomationCredential tidak mengambil objek PSCredential yang dapat digunakan untuk autentikasi. Ini hanya menyediakan informasi tentang kredensial. Jika perlu menggunakan kredensial dalam runbook, Anda harus mengambilnya sebagai objek PSCredential menggunakan Get-AutomationPSCredential.

Atau, Anda dapat menggunakan metode GetNetworkCredential untuk mengambil objek NetworkCredential yang merepresentasikan versi kata sandi yang tidak aman.

Contoh runbook tekstual

Contoh berikut ini menunjukkan cara menggunakan kredensial PowerShell dalam runbook. Ini mengambil kredensial dan menetapkan nama pengguna dan kata sandinya ke variabel.

$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password

Anda juga dapat menggunakan kredensial untuk mengautentikasi ke Azure dengan Connect-AzAccount setelah pertama kali terhubung dengan identitas terkelola. Contoh ini menggunakan identitas terkelola yang ditugaskan sistem.

# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process

# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext

# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password

$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)

# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context

# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
    -TenantId $AzureContext.Subscription.TenantId `
    -DefaultProfile $AzureContext

Contoh runbook grafis

Anda dapat menambahkan aktivitas untuk cmdlet Get-AutomationPSCredential internal ke runbook grafis dengan mengeklik kanan kredensial di panel Pustaka editor grafis dan memilih Tambahkan ke kanvas.

Add credential cmdlet to canvas

Gambar berikut menunjukkan contoh penggunaan kredensial dalam buku proses grafis. Dalam hal ini, kredensial menyediakan autentikasi untuk runbook ke sumber daya Azure, seperti yang dijelaskan dalam Menggunakan ID Microsoft Entra di Azure Automation untuk mengautentikasi ke Azure. Aktivitas pertama mengambil kredensial yang memiliki akses ke langganan Azure. Aktivitas koneksi akun kemudian menggunakan kredensial ini untuk menyediakan autentikasi untuk setiap aktivitas yang terjadi setelahnya. Tautan alur digunakan di sini karena Get-AutomationPSCredential mengharapkan satu objek.

Credential workflow with pipeline link example

Menggunakan kredensial dalam konfigurasi DSC

Sekalipun konfigurasi DSC di Azure Automation dapat bekerja dengan aset kredensial menggunakan Get-AutomationPSCredential, konfigurasi ini juga dapat meneruskan aset kredensial melalui parameter. Untuk informasi selengkapnya, lihat Mengompilasi konfigurasi di Azure Automation DSC.

Langkah berikutnya