Azure Otomasyonu'nda kimlik bilgilerini yönetme

Otomasyon kimlik bilgisi varlığı, kullanıcı adı ve parola gibi güvenlik kimlik bilgilerini içeren bir nesne içerir. Runbook'lar ve DSC yapılandırmaları, kimlik doğrulaması için PSCredential nesnesini kabul eden cmdlet'leri kullanır. Alternatif olarak, kimlik doğrulaması gerektiren bazı uygulama veya hizmetlere sağlamak üzere nesnenin PSCredential kullanıcı adını ve parolasını ayıklayabilirler.

Dekont

Azure Otomasyonu’ndaki kimlik bilgileri, sertifikalar, bağlantılar ve şifrelenmiş değişkenler gibi varlıkların güvenliğini sağlayın. Bu varlıklar şifrelenir ve her Otomasyon hesabı için oluşturulan benzersiz bir anahtar kullanılarak Azure Otomasyonu depolanır. Azure Otomasyonu anahtarı sistem tarafından yönetilen Key Vault'ta depolar. Otomasyon, güvenli bir varlığı depolamadan önce anahtarı Key Vault'tan yükler ve ardından varlığı şifrelemek için kullanır.

Dekont

Kişisel verileri görüntüleme veya silme hakkında bilgi için bkz. GDPR için Azure Veri Nesnesi İstekleri. GDPR hakkında daha fazla bilgi için Microsoft Güven Merkezi'nin GDPR bölümüne ve Hizmet Güveni portalının GDPR bölümüne bakın.

Kimlik bilgilerine erişmek için kullanılan PowerShell cmdlet'leri

Aşağıdaki tabloda yer alan cmdlet'ler, PowerShell ile Otomasyon kimlik bilgilerini oluşturur ve yönetir. Az modüllerinin bir parçası olarak göndermektedirler.

Cmdlet Tanım
Get-AzAutomationCredential Kimlik bilgisi hakkında meta veriler içeren bir CredentialInfo nesnesi alır. Cmdlet nesnenin PSCredential kendisini almaz.
New-AzAutomationCredential Yeni bir Otomasyon kimlik bilgisi oluşturur.
Remove-AzAutomationCredential Otomasyon kimlik bilgilerini kaldırır.
Set-AzAutomationCredential Mevcut Otomasyon kimlik bilgilerinin özelliklerini ayarlar.

Kimlik bilgilerine erişmek için kullanılan diğer cmdlet'ler

Aşağıdaki tablodaki cmdlet'ler runbook'larınızdaki ve DSC yapılandırmalarınızdaki kimlik bilgilerine erişmek için kullanılır.

Cmdlet Tanım
Get-AutomationPSCredential PSCredential Runbook veya DSC yapılandırmasında kullanılacak nesneyi alır. Çoğu zaman, cmdlet yerine Get-AzAutomationCredential bu iç cmdlet'i kullanmanız gerekir; bunun nedeni, yalnızca kimlik bilgisi bilgilerini almasıdır. Bu bilgiler normalde başka bir cmdlet'e geçirmek için yararlı olmaz.
Get-Credential Kullanıcı adı ve parola istemli bir kimlik bilgisi alır. Bu cmdlet, varsayılan Microsoft.PowerShell.Security modülünün bir parçasıdır. Bkz. Varsayılan modüller.
New-AzureAutomationCredential Bir kimlik bilgisi varlığı oluşturur. Bu cmdlet, varsayılan Azure modülünün bir parçasıdır. Bkz. Varsayılan modüller.

Kodunuzdaki nesneleri almak PSCredential için modülü içeri aktarmanız Orchestrator.AssetManagement.Cmdlets gerekir. Daha fazla bilgi için bkz. Azure Otomasyonu modülleri yönetme.

Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue

Dekont

parametresinde NameGet-AutomationPSCredentialdeğişkenleri kullanmaktan kaçınmanız gerekir. Bunların kullanımı, tasarım zamanında runbook'lar veya DSC yapılandırmaları ile kimlik bilgileri varlıkları arasındaki bağımlılıkların bulunmasını karmaşıklaştırabilir.

Kimlik bilgilerine erişen Python işlevleri

Aşağıdaki tabloda yer alan işlev, Python 2 ve 3 runbook'larındaki kimlik bilgilerine erişmek için kullanılır. Python 3 runbook'ları şu anda önizleme aşamasındadır.

İşlev Tanım
automationassets.get_automation_credential Kimlik bilgisi varlığı hakkındaki bilgileri alır.

Dekont

Varlık işlevlerine automationassets erişmek için Python runbook'unuzun üst kısmındaki modülü içeri aktarın.

Yeni kimlik bilgisi varlığı oluşturma

Azure portalını veya Windows PowerShell'i kullanarak yeni bir kimlik bilgisi varlığı oluşturabilirsiniz.

Azure portalıyla yeni bir kimlik bilgisi varlığı oluşturma

  1. Otomasyon hesabınızda, sol bölmede Paylaşılan Kaynaklar'ın altında Kimlik Bilgileri'ni seçin.

  2. Kimlik Bilgileri sayfasında Kimlik bilgisi ekle'yi seçin.

  3. Yeni Kimlik Bilgileri bölmesinde, adlandırma standartlarınıza uygun bir kimlik bilgisi adı girin.

  4. Kullanıcı adı alanına erişim kimliğinizi yazın.

  5. Her iki parola alanı için gizli dizi erişim anahtarınızı girin.

    Create new credential

  6. Çok faktörlü kimlik doğrulama kutusu işaretliyse, işaretini kaldırın.

  7. Yeni kimlik bilgisi varlığını kaydetmek için Oluştur'a tıklayın.

Dekont

Azure Otomasyonu, çok faktörlü kimlik doğrulaması kullanan kullanıcı hesaplarını desteklemez.

Windows PowerShell ile yeni bir kimlik bilgisi varlığı oluşturma

Aşağıdaki örnekte yeni bir Otomasyon kimlik bilgisi varlığının nasıl oluşturulacağı gösterilmektedir. Önce PSCredential ad ve parola ile bir nesne oluşturulur ve ardından kimlik bilgisi varlığını oluşturmak için kullanılır. Bunun yerine, cmdlet'ini Get-Credential kullanarak kullanıcıdan bir ad ve parola yazmasını isteyebilirsiniz.

$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

Kimlik bilgisi varlığı alma

Runbook veya DSC yapılandırması, iç Get-AutomationPSCredential cmdlet'i ile bir kimlik bilgisi varlığı alır. Bu cmdlet, kimlik bilgisi gerektiren bir PSCredential cmdlet ile kullanabileceğiniz bir nesne alır. Ayrıca, tek tek kullanılacak kimlik bilgisi nesnesinin özelliklerini de alabilirsiniz. Nesne, kullanıcı adı ve güvenli parola için özelliklere sahiptir.

Dekont

Get-AzAutomationCredential Cmdlet, kimlik doğrulaması için kullanılabilecek bir PSCredential nesne almaz. Yalnızca kimlik bilgileri hakkında bilgi sağlar. Runbook'ta bir kimlik bilgisi kullanmanız gerekiyorsa, kullanarak Get-AutomationPSCredentialbunu bir PSCredential nesne olarak almanız gerekir.

Alternatif olarak, parolanın güvenli olmayan bir sürümünü temsil eden bir NetworkCredential nesnesini almak için GetNetworkCredential yöntemini kullanabilirsiniz.

Metin runbook örneği

Aşağıdaki örnekte bir runbook'ta PowerShell kimlik bilgilerinin nasıl kullanılacağı gösterilmektedir. Kimlik bilgilerini alır ve kullanıcı adını ve parolasını değişkenlere atar.

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

Ayrıca, yönetilen bir kimlikle ilk kez bağlandıktan sonra Bağlan-AzAccount ile Azure'da kimlik doğrulaması yapmak için kimlik bilgilerini de kullanabilirsiniz. Bu örnekte sistem tarafından atanan yönetilen kimlik kullanılır.

# 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

Grafik runbook örneği

Grafik düzenleyicinin Get-AutomationPSCredential Kitaplık bölmesindeki kimlik bilgilerine sağ tıklayıp Tuvale ekle'yi seçerek iç cmdlet için bir etkinliği grafik runbook'a ekleyebilirsiniz.

Add credential cmdlet to canvas

Aşağıdaki görüntüde, grafik runbook'ta kimlik bilgisi kullanma örneği gösterilmektedir. Bu durumda kimlik bilgisi, Azure'da kimlik doğrulaması yapmak için Azure Otomasyonu'de Microsoft Entra Kimliğini kullanma bölümünde açıklandığı gibi Azure kaynaklarına bir runbook için kimlik doğrulaması sağlar. İlk etkinlik, Azure aboneliğine erişimi olan kimlik bilgilerini alır. Hesap bağlantısı etkinliği bundan sonra gelen etkinlikler için kimlik doğrulaması sağlamak üzere bu kimlik bilgilerini kullanır. Tek bir nesne beklendiğinden Get-AutomationPSCredential burada bir işlem hattı bağlantısı kullanılır.

Credential workflow with pipeline link example

DSC yapılandırmasında kimlik bilgilerini kullanma

Azure Otomasyonu'daki DSC yapılandırmaları kullanarak Get-AutomationPSCredentialkimlik bilgileri varlıklarıyla çalışabilir, ancak kimlik bilgileri varlıklarını parametreler aracılığıyla da geçirebilir. Daha fazla bilgi için bkz. Azure Otomasyonu DSC'de yapılandırmaları derleme.

Sonraki adımlar