Hızlı Başlangıç: .NET Core ile yönetim grubu oluşturma

Yönetim grupları, birden çok abonelikte erişimi, ilkeyi ve uyumluluğu yönetmenize yardımcı olan kapsayıcılardır. Azure İlkesi ve Azure Rol Tabanlı Erişim Denetimleri ile kullanılabilecek etkili ve verimli bir hiyerarşi oluşturmak için bu kapsayıcıları oluşturun. Yönetim grupları hakkında daha fazla bilgi için bkz . Kaynaklarınızı Azure yönetim gruplarıyla düzenleme.

Dizinde oluşturulan ilk yönetim grubunun tamamlanması 15 dakika kadar sürebilir. Dizininiz için Azure'da yönetim grupları hizmetini ayarlamak için ilk kez çalışan işlemler vardır. İşlem tamamlandığında bir bildirim alırsınız. Daha fazla bilgi için bkz . yönetim gruplarının ilk kurulumu.

Önkoşullar

  • Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

  • clientId ve clientSecret dahil olmak üzere bir Azure hizmet sorumlusu. Azure İlkesi ile kullanmak üzere bir hizmet sorumlunuz yoksa veya yeni bir tane oluşturmak istiyorsanız bkz. .NET kimlik doğrulaması için Azure yönetim kitaplıkları. Sonraki adımlarda bunu yapacağız. .NET Core paketlerini yükleme adımını atlayın.

  • Kiracıdaki herhangi bir Azure AD kullanıcısı, hiyerarşi koruması etkinleştirilmemişse bu kullanıcıya yönetim grubu yazma izni atanmadan bir yönetim grubu oluşturabilir. Bu yeni yönetim grubu Kök Yönetim Grubu'nun veya varsayılan yönetim grubunun alt öğesi olur ve oluşturucuya "Sahip" rol ataması verilir. Yönetim grubu hizmeti, rol atamalarına kök düzeyde ihtiyaç duyulmaması için bu özelliği sağlar. Kök Yönetim Grubu oluşturulduğunda hiçbir kullanıcının erişimi yoktur. Yönetim gruplarını kullanmaya başlamak için Azure AD Genel Yönetici bulma engelini önlemek için, kök düzeyde ilk yönetim gruplarının oluşturulmasına izin veririz.

Azure Cloud Shell

Azure, tarayıcınız aracılığıyla kullanabileceğiniz etkileşimli bir kabuk ortamı olan Azure Cloud Shell'i barındırıyor. Azure hizmetleriyle çalışmak için Cloud Shell ile Bash veya PowerShell kullanabilirsiniz. Yerel ortamınıza herhangi bir şey yüklemek zorunda kalmadan bu makaledeki kodu çalıştırmak için Cloud Shell önceden yüklenmiş komutlarını kullanabilirsiniz.

Azure Cloud Shell'i başlatmak için:

Seçenek Örnek/Bağlantı
Kodun veya komut bloğunun sağ üst köşesindeki Deneyin'i seçin. Deneyin seçildiğinde kod veya komut otomatik olarak Cloud Shell'e kopyalanmaz. Screenshot that shows an example of Try It for Azure Cloud Shell.
https://shell.azure.comadresine gidin veya Cloud Shell'i tarayıcınızda açmak için Cloud Shell'i Başlat düğmesini seçin. Button to launch Azure Cloud Shell.
Azure portalının sağ üst kısmındaki menü çubuğunda Cloud Shell düğmesini seçin. Screenshot that shows the Cloud Shell button in the Azure portal

Azure Cloud Shell'i kullanmak için:

  1. Cloud Shell'i başlatın.

  2. Kodu veya komutu kopyalamak için kod bloğundaki (veya komut bloğundaki) Kopyala düğmesini seçin.

  3. Windows ve Linux'ta Ctrl+Shift V'yi seçerek veya macOS üzerinde Cmd+Shift++V'yi seçerek kodu veya komutu Cloud Shell oturumuna yapıştırın.

  4. Kodu veya komutu çalıştırmak için Enter'ı seçin.

Uygulama kurulumu

Yönetim gruplarını yönetmek üzere .NET Core'u etkinleştirmek için yeni bir konsol uygulaması oluşturun ve gerekli paketleri yükleyin.

  1. En son .NET Core'un yüklü olup olmadığını denetleyin (en az 3.1.8). Henüz yüklenmemişse dotnet.microsoft.com adresinden indirin.

  2. "mgCreate" adlı yeni bir .NET Core konsol uygulaması başlatın:

    dotnet new console --name "mgCreate"
    
  3. Dizinleri yeni proje klasörüne değiştirin ve Azure İlkesi için gerekli paketleri yükleyin:

    # Add the Azure Policy package for .NET Core
    dotnet add package Microsoft.Azure.Management.ManagementGroups --version 1.1.1-preview
    
    # Add the Azure app auth package for .NET Core
    dotnet add package Microsoft.Azure.Services.AppAuthentication --version 1.6.1
    
  4. Varsayılan program.cs değeri aşağıdaki kodla değiştirin ve güncelleştirilmiş dosyayı kaydedin:

    using System;
    using System.Collections.Generic;
    using System.Threading.Tasks;
    using Microsoft.IdentityModel.Clients.ActiveDirectory;
    using Microsoft.Rest;
    using Microsoft.Azure.Management.ManagementGroups;
    using Microsoft.Azure.Management.ManagementGroups.Models;
    
    namespace mgCreate
    {
        class Program
        {
            static async Task Main(string[] args)
            {
                string strTenant = args[0];
                string strClientId = args[1];
                string strClientSecret = args[2];
                string strGroupId = args[3];
                string strDisplayName = args[4];
    
                var authContext = new AuthenticationContext($"https://login.microsoftonline.com/{strTenant}");
                var authResult = await authContext.AcquireTokenAsync(
                       "https://management.core.windows.net",
                       new ClientCredential(strClientId, strClientSecret));
    
                using (var client = new ManagementGroupsAPIClient(new TokenCredentials(authResult.AccessToken)))
                {
                    var mgRequest = new CreateManagementGroupRequest
                    {
                        DisplayName = strDisplayName
                    };
                    var response = await client.ManagementGroups.CreateOrUpdateAsync(strGroupId, mgRequest);
                }
            }
        }
    }
    
  5. Konsol uygulamasını derleyin mgCreate ve yayımlayın:

    dotnet build
    dotnet publish -o {run-folder}
    

Yönetim grubunu oluşturma

Bu hızlı başlangıçta kök yönetim grubunda yeni bir yönetim grubu oluşturacaksınız.

  1. Dizinleri {run-folder} önceki dotnet publish komutla tanımladığınız şekilde değiştirin.

  2. Terminale aşağıdaki komutu girin:

    mgCreate.exe `
       "{tenantId}" `
       "{clientId}" `
       "{clientSecret}" `
       "{groupID}" `
       "{displayName}"
    

Yukarıdaki komutlarda aşağıdaki bilgiler kullanılmaktadır:

  • {tenantId} - Değerini kiracı kimliğiniz ile değiştirin
  • {clientId} - değerini hizmet sorumlunuzun istemci kimliğiyle değiştirin
  • {clientSecret} - değerini hizmet sorumlunuzun istemci gizli dizisiyle değiştirin
  • {groupID} - değerini yeni yönetim grubunuzun kimliğiyle değiştirin
  • {displayName} - yeni yönetim grubunuzun kolay adıyla değiştirin

Sonuç, kök yönetim grubundaki yeni bir yönetim grubudur.

Kaynakları temizleme

  • Portal aracılığıyla yeni yönetim grubunu silin.

  • .NET Core konsol uygulamasını ve yüklü paketleri kaldırmak istiyorsanız proje klasörünü silin mgCreate .

Sonraki adımlar

Bu hızlı başlangıçta, kaynak hiyerarşinizi düzenlemek için bir yönetim grubu oluşturdunuz. Yönetim grubu abonelikleri veya diğer yönetim gruplarını barındırabilir.

Yönetim grupları ve kaynak hiyerarşinizi yönetme hakkında daha fazla bilgi edinmek için devam edin: