Kaynak denetimi tümleştirmesini kullanma

Azure Otomasyonu'nda kaynak denetimi tümleştirmesi, kaynak denetim deponuzdan tek yönlü eşitlemeyi destekler. Kaynak denetimi, Otomasyon hesabınızdaki runbook'larınızı GitHub veya Azure DevOps kaynak denetimi deponuzdaki betiklerle güncel tutmanızı sağlar. Bu özellik, geliştirme ortamınızda test edilmiş kodu üretim Otomasyonu hesabınıza yükseltmeyi kolaylaştırır.

Kaynak denetimi tümleştirmesi, ekibinizle kolayca işbirliği yapmanızı, değişiklikleri izlemenizi ve runbook'larınızın önceki sürümlerine geri dönmenizi sağlar. Örneğin, kaynak denetimi, kaynak denetimindeki farklı dalları geliştirme, test ve üretim Otomasyonu hesaplarınızla eşitlemenizi sağlar.

Dekont

Kaynak denetimi eşitleme işleri kullanıcının Otomasyon hesabı altında çalıştırılır ve diğer Otomasyon işleri ile aynı hızda faturalandırılır. Ayrıca, Azure Otomasyonu İşleri MFA'yı (Multi-Factor Authentication) desteklemez.

Kaynak denetim türleri

Azure Otomasyonu üç tür kaynak denetimini destekler:

  • GitHub
  • Azure DevOps (Git)
  • Azure DevOps (TFVC)

Ön koşullar

Dekont

Azure Otomasyonu hem sistem tarafından atanan hem de kaynak denetimi tümleştirmesi ile kullanıcı tarafından atanan yönetilen kimliği destekler. Kullanıcı tarafından atanan yönetilen kimliği kullanmak için, kullanıcı tarafından atanan kimliğin İstemci Kimliği değeriyle bir otomasyon değişkeni AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID oluşturun. Kullanıcı tarafından atanan Managed Identity etkinleştirilmelidir ve otomasyon hesabına katkıda bulunan erişimine sahip olmalıdır. Bu değişken oluşturulmazsa, varsayılan olarak sistem tarafından atanan kimliği kullanırız.

Screenshot that displays the user-assigned Managed Identity.

Hem Farklı Çalıştır hesabınız hem de yönetilen kimliğiniz etkinse yönetilen kimliğe tercih edilir.

Önemli

Azure Otomasyonu Farklı Çalıştır Hesabı devre dışı bırakılacak30 Eylül 2023 ve yerine Yönetilen Kimlikler eklenecektir. Bu tarihten önce Farklı Çalıştır hesabından Yönetilen kimliklere geçmeniz gerekir.

Dekont

Bu Azure DevOps belgelerine göre, OAuth ilkesi aracılığıyla üçüncü taraf uygulama erişimi tüm yeni kuruluşlar için varsayılan olarak kapalı olarak ayarlanır. Bu nedenle, Azure DevOps'ta Kuruluş Ayarlar İlkeler kutucuğu altında OAuth aracılığıyla Üçüncü taraf uygulama erişimini etkinleştirmeden kaynak denetim türü olarak Azure Devops (Git) ile Azure Otomasyonu kaynak denetimini yapılandırmaya çalışırsanız SourceControl securityToken geçersiz hatası alabilirsiniz. Bu nedenle bu hatayı önlemek için önce Azure DevOps'ta Kuruluş Ayarlar İlkeler kutucuğu altında OAuth aracılığıyla Üçüncü taraf uygulama erişimini etkinleştirdiğinizden emin olun.

Kaynak denetimini yapılandırma

Bu bölümde Otomasyon hesabınız için kaynak denetiminin nasıl yapılandırılır anlatılır. Azure portalını veya PowerShell'i kullanabilirsiniz.

Katkıda Bulunan rolüne yönetilen kimlik atama

Bu örnekte, abonelikteki Katkıda Bulunan rolünün Azure Otomasyonu hesap kaynağına nasıl atanacaklarını göstermek için Azure PowerShell kullanılır.

  1. Yükseltilmiş ayrıcalıklara sahip bir PowerShell konsolu açın.

  2. komutunu Connect-AzAccountçalıştırarak Azure'da oturum açın.

  3. Yönetilen kimliği Katkıda Bulunan rolüne atamak için aşağıdaki komutu çalıştırın.

    New-AzRoleAssignment `
        -ObjectId <automation-Identity-Object(Principal)-Id> `
        -Scope "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}" `
        -RoleDefinitionName "Contributor"
    

Azure portalında kaynak denetimini yapılandırma

Azure portalını kullanarak kaynak denetimini yapılandırmak için bu yordamı kullanın.

  1. Otomasyon hesabınızda Kaynak Denetimi'ne tıklayın ve Ekle'ye tıklayın.

    Select source control

  2. Kaynak Denetimi türü'nü seçin ve ardından Kimlik Doğrulaması'nı tıklatın.

  3. Bir tarayıcı penceresi açılır ve oturum açmanızı ister. Kimlik doğrulamasını tamamlamak için istemleri izleyin.

  4. Kaynak Denetimi Özeti sayfasında, aşağıda tanımlanan kaynak denetimi özelliklerini doldurmak için alanları kullanın. Bitirdiğinizde Kaydet'e tıklayın.

    Özellik Tanım
    Kaynak denetimi adı Kaynak denetimi için kolay bir ad. Bu ad yalnızca harf ve sayı içermelidir.
    Kaynak denetim türü Kaynak denetim mekanizmasının türü. Kullanılabilir seçenekler şunlardır:
    * GitHub
    * Azure DevOps (Git)
    * Azure DevOps (TFVC)
    Depo Deponun veya projenin adı. İlk 200 depo alınır. Depo aramak için alana adı yazın ve GitHub'da Ara'ya tıklayın.
    Şube Kaynak dosyaların çekildiği dal. TFVC kaynak denetim türü için dal hedefleme kullanılamaz.
    Folder path Eşitlenecek runbook'ları içeren klasör; örneğin, /Runbooks. Yalnızca belirtilen klasördeki runbook'lar eşitlenir. Özyineleme desteklenmez.
    Otomatik Eşitleme1 Kaynak denetim deposunda veya GitHub deposunda bir işleme yapıldığında otomatik eşitlemeyi açan veya kapatan ayar.
    Runbook'u yayımlama Kaynak denetiminden eşitlemeden sonra runbook'lar otomatik olarak yayımlanıyorsa Açık ayarı ve aksi takdirde Kapalı ayarı.
    Tanım Kaynak denetimi hakkında ek ayrıntıları belirten metin.

    1 Kaynak denetimi tümleştirmesini Azure DevOps ile yapılandırırken Otomatik Eşitleme'yi etkinleştirmek için Project Yönetici istrator veya GitHub deposu sahibi olmanız gerekir. Ortak çalışanlar Kaynak Denetimini yalnızca Otomatik Eşitleme olmadan yapılandırabilir.
    Otomatik Eşitleme, Otomasyon Özel Bağlantı ile çalışmaz. Özel Bağlantı etkinleştirirseniz, ağ dışında olduğu için kaynak denetimi web kancası çağrıları başarısız olur.

    Screenshot that describes the Source control summary.

Dekont

Kaynak denetimi deponuzun oturum açma bilgileri, Azure portalında oturum açma işleminizden farklı olabilir. Kaynak denetimi yapılandırırken kaynak denetimi deponuz için doğru hesapla oturum açtığınızdan emin olun. Şüpheniz varsa tarayıcınızda yeni bir sekme açın, dev.azure.com, visualstudio.com veya github.com oturumu kapatın ve kaynak denetimine yeniden bağlanmayı deneyin.

PowerShell'de kaynak denetimini yapılandırma

Azure Otomasyonu'de kaynak denetimini yapılandırmak için PowerShell'i de kullanabilirsiniz. Bu işlem için PowerShell cmdlet'lerini kullanmak için bir kişisel erişim belirteci (PAT) gerekir. Kaynak denetimi bağlantısını oluşturmak için New-AzAutomationSourceControl cmdlet'ini kullanın. Bu cmdlet, PAT için güvenli bir dize gerektirir. Güvenli dize oluşturmayı öğrenmek için bkz . ConvertTo-SecureString.

Aşağıdaki alt bölümler GitHub, Azure DevOps (Git) ve Azure DevOps (TFVC) için kaynak denetimi bağlantısının PowerShell oluşturma işlemini göstermektedir.

GitHub için kaynak denetimi bağlantısı oluşturma

New-AzAutomationSourceControl -Name SCGitHub -RepoUrl https://github.com/<accountname>/<reponame>.git -SourceType GitHub -FolderPath "/MyRunbooks" -Branch main -AccessToken <secureStringofPAT> -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName>

Azure DevOps için kaynak denetimi bağlantısı oluşturma (Git)

Dekont

Azure DevOps (Git), önceki biçimlerde kullanılan visualstudio.com yerine dev.azure.com erişen bir URL kullanır. Eski URL biçimi https://<accountname>.visualstudio.com/<projectname>/_git/<repositoryname> kullanım dışıdır ancak yine de desteklenir. Yeni biçim tercih edilir.

New-AzAutomationSourceControl -Name SCReposGit -RepoUrl https://dev.azure.com/<accountname>/<adoprojectname>/_git/<repositoryname> -SourceType VsoGit -AccessToken <secureStringofPAT> -Branch main -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName> -FolderPath "/Runbooks"

Azure DevOps (TFVC) için kaynak denetimi bağlantısı oluşturma

Dekont

Azure DevOps (TFVC), önceki biçimlerde kullanılan visualstudio.com yerine dev.azure.com erişen bir URL kullanır. Eski URL biçimi https://<accountname>.visualstudio.com/<projectname>/_versionControl kullanım dışıdır ancak yine de desteklenir. Yeni biçim tercih edilir.

New-AzAutomationSourceControl -Name SCReposTFVC -RepoUrl https://dev.azure.com/<accountname>/<adoprojectname>/_git/<repositoryname> -SourceType VsoTfvc -AccessToken <secureStringofPAT> -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName> -FolderPath "/Runbooks"

Kişisel erişim belirteci (PAT) izinleri

Kaynak denetimi, PAT'ler için bazı minimum izinler gerektirir. Aşağıdaki alt bölümler GitHub ve Azure DevOps için gereken en düşük izinleri içerir.

GitHub için en düşük PAT izinleri

Aşağıdaki tablo GitHub için gereken en düşük PAT izinlerini tanımlar. GitHub'da PAT oluşturma hakkında daha fazla bilgi için bkz . Komut satırı için kişisel erişim belirteci oluşturma.

Scope Tanım
repo
repo:status İşleme durumuna erişme
repo_deployment Erişim dağıtımı durumu
public_repo Genel depolara erişme
repo:invite Depo davetlerine erişme
security_events Güvenlik olaylarını okuma ve yazma
admin:repo_hook
write:repo_hook Depo kancaları yazma
read:repo_hook Depo kancalarını okuma
Azure DevOps için en düşük PAT izinleri

Aşağıdaki liste, Azure DevOps için gereken en düşük PAT izinlerini tanımlar. Azure DevOps'ta PAT oluşturma hakkında daha fazla bilgi için bkz . Kişisel erişim belirteçleriyle erişimin kimliğini doğrulama.

Scope Erişim Türü
Code Okundu
Project and team Okuma
Identity Okuma
User profile Okuma
Work items Okundu
Service connections Okuma, sorgulama, yönetme1

1 İzin Service connections yalnızca otomatik eşitlemeyi etkinleştirdiyseniz gereklidir.

Kaynak denetimiyle eşitle

Kaynak denetimiyle eşitlemek için bu adımları izleyin.

  1. Kaynak denetim sayfasındaki tablodan kaynağı seçin.

  2. Eşitleme işlemini başlatmak için Eşitlemeyi Başlat'a tıklayın.

  3. İşleri eşitle sekmesine tıklayarak geçerli eşitleme işinin veya öncekilerin durumunu görüntüleyin.

  4. Kaynak Denetimi açılan menüsünde bir kaynak denetim mekanizması seçin.

    Sync status

  5. Bir işe tıklanması, iş çıkışını görüntülemenizi sağlar. Aşağıdaki örnek, bir kaynak denetimi eşitleme işinin çıktısıdır.

    ===================================================================
    
    Azure Automation Source Control.
    Supported runbooks to sync: PowerShell Workflow, PowerShell Scripts, DSC Configurations, Graphical, and Python 2.
    
    Setting AzEnvironment.
    
    Getting AzureRunAsConnection.
    
    Logging in to Azure...
    
    Source control information for syncing:
    
    [Url = https://ContosoExample.visualstudio.com/ContosoFinanceTFVCExample/_versionControl] [FolderPath = /Runbooks]
    
    Verifying url: https://ContosoExample.visualstudio.com/ContosoFinanceTFVCExample/_versionControl
    
    Connecting to VSTS...
    
    Source Control Sync Summary:
    
    2 files synced:
     - ExampleRunbook1.ps1
     - ExampleRunbook2.ps1
    
    ==================================================================
    
    
  6. Kaynak Denetimi Eşitleme İş Özeti sayfasında Tüm Günlükler seçilerek ek günlükler kullanılabilir. Bu ek günlük girdileri, kaynak denetimi kullanılırken ortaya çıkabilecek sorunları gidermenize yardımcı olabilir.

Kaynak denetiminin bağlantısını kes

Kaynak denetimi deposu bağlantısını kesmek için:

  1. Otomasyon hesabınızdaki Hesap Ayarlar altındaki Açık Kaynak denetimi.

  2. Kaldırılacak kaynak denetim mekanizmasını seçin.

  3. Kaynak Denetimi Özeti sayfasında Sil'e tıklayın.

Kodlama sorunlarını işleme

Kaynak denetim deponuzdaki runbook'ları farklı düzenleyiciler kullanarak birden çok kişi düzenliyorsa kodlama sorunları oluşabilir. Bu durum hakkında daha fazla bilgi edinmek için bkz . Kodlama sorunlarının yaygın nedenleri.

PAT'yi güncelleştirme

Şu anda kaynak denetiminde PAT'yi güncelleştirmek için Azure portalını kullanamazsınız. PAT'nizin süresi dolduğunda veya iptal edildiğinde, kaynak denetimini şu yollardan biriyle yeni bir erişim belirteci ile güncelleştirebilirsiniz:

Sonraki adımlar