Udostępnij za pośrednictwem


Szybki start: tworzenie grupy zarządzania przy użyciu platformy .NET Core

Grupy zarządzania to kontenery, które ułatwiają zarządzanie dostępem, zasadami i zgodnością w wielu subskrypcjach. Utwórz te kontenery, aby utworzyć efektywną i wydajną hierarchię, która może być używana z usługami Azure Policy i Kontrola dostępu oparta na rolach platformy Azure. Aby uzyskać więcej informacji na temat grup zarządzania, zobacz Organizowanie zasobów przy użyciu grup zarządzania platformy Azure.

Ukończenie pierwszej grupy zarządzania utworzonej w katalogu może potrwać do 15 minut. Istnieją procesy uruchamiane po raz pierwszy w celu skonfigurowania usługi grup zarządzania na platformie Azure dla katalogu. Po zakończeniu procesu otrzymasz powiadomienie. Aby uzyskać więcej informacji, zobacz wstępną konfigurację grup zarządzania.

Wymagania wstępne

  • Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

  • Jednostka usługi platformy Azure, w tym clientId i clientSecret. Jeśli nie masz jednostki usługi do użycia z usługą Azure Policy lub chcesz utworzyć nową, zobacz Biblioteki zarządzania platformy Azure na potrzeby uwierzytelniania platformy .NET. Pomiń krok, aby zainstalować pakiety platformy .NET Core, ponieważ wykonamy to w następnych krokach.

  • Każdy użytkownik microsoft Entra ID w dzierżawie może utworzyć grupę zarządzania bez uprawnienia zapisu grupy zarządzania przypisane do tego użytkownika, jeśli ochrona hierarchii nie jest włączona. Ta nowa grupa zarządzania staje się elementem podrzędnym głównej grupy zarządzania lub domyślnej grupy zarządzania, a twórca otrzymuje przypisanie roli Właściciel. Usługa grupy zarządzania umożliwia tę możliwość, aby przypisania ról nie są potrzebne na poziomie głównym. Po utworzeniu głównej grupy zarządzania użytkownicy nie mają do niej dostępu. Aby rozpocząć korzystanie z grup zarządzania, usługa umożliwia tworzenie początkowych grup zarządzania na poziomie głównym. Aby uzyskać więcej informacji, zobacz Główna grupa zarządzania dla każdego katalogu.

Azure Cloud Shell

Na platforma Azure hostowane jest Azure Cloud Shell, interaktywne środowisko powłoki, z którego można korzystać w przeglądarce. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.

Aby uruchomić środowisko Azure Cloud Shell:

Opcja Przykład/link
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. Zrzut ekranu przedstawiający przykład narzędzia Try It dla usługi Azure Cloud Shell.
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. Przycisk uruchamiania usługi Azure Cloud Shell.
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. Zrzut ekranu przedstawiający przycisk usługi Cloud Shell w witrynie Azure Portal

Aby użyć usługi Azure Cloud Shell:

  1. Uruchom usługę Cloud Shell.

  2. Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.

  3. Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając Ctrl+Shift V w systemach Windows i Linux lub wybierając pozycję Cmd+Shift++V w systemie macOS.

  4. Wybierz Enter, aby uruchomić kod lub polecenie.

Konfiguracja aplikacji

Aby umożliwić platformie .NET Core zarządzanie grupami zarządzania, utwórz nową aplikację konsolową i zainstaluj wymagane pakiety.

  1. Sprawdź, czy zainstalowano najnowszą wersję platformy .NET Core (co najmniej 3.1.8). Jeśli nie został jeszcze zainstalowany, pobierz go na dotnet.microsoft.com.

  2. Zainicjuj nową aplikację konsolową platformy .NET Core o nazwie "mgCreate":

    dotnet new console --name "mgCreate"
    
  3. Zmień katalogi na nowy folder projektu i zainstaluj wymagane pakiety dla usługi Azure Policy:

    # 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. Zastąp wartość domyślną program.cs następującym kodem i zapisz zaktualizowany plik:

    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. Skompiluj i opublikuj aplikację konsolową mgCreate :

    dotnet build
    dotnet publish -o {run-folder}
    

Tworzenie grupy zarządzania

W tym przewodniku Szybki start utworzysz nową grupę zarządzania w głównej grupie zarządzania.

  1. Zmień katalogi na {run-folder} zdefiniowane za pomocą poprzedniego dotnet publish polecenia.

  2. Wprowadź następujące polecenie w terminalu:

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

Poprzednie polecenia korzystają z następujących informacji:

  • {tenantId} — zastąp identyfikatorem swojej dzierżawy
  • {clientId} — Zastąp element identyfikatorem klienta jednostki usługi
  • {clientSecret} — Zastąp kluczem tajnym klienta jednostki usługi
  • {groupID} — Zastąp element identyfikatorem nowej grupy zarządzania
  • {displayName} — Zastąp przyjazną nazwą nowej grupy zarządzania

Wynikiem jest nowa grupa zarządzania w głównej grupie zarządzania.

Czyszczenie zasobów

  • Usuń nową grupę zarządzania za pośrednictwem portalu.

  • Jeśli chcesz usunąć aplikację konsolową platformy .NET Core i zainstalowane pakiety, usuń mgCreate folder projektu.

Następne kroki

W tym przewodniku Szybki start utworzono grupę zarządzania w celu organizowania hierarchii zasobów. Grupa zarządzania może przechowywać subskrypcje lub inne grupy zarządzania.

Aby dowiedzieć się więcej o grupach zarządzania i sposobie zarządzania hierarchią zasobów, przejdź do: