Szybki start: Wdrożenie szablonu katalogu usług z użyciem CLI

Azure Enclave to usługa sieciowa w chmurze, która umożliwia organizacjom przetwarzającym wysoce wrażliwe dane szybkie wdrażanie obciążeń roboczych i zarządzanie nimi na dużą skalę w komercyjnych oraz fizycznie odizolowanych chmurach Azure. W ramach tego szybkiego przewodnika wykonasz następujące czynności:

  • Wdroż szablon katalogu usług, używając poleceń Azure CLI.

Note

To przykładowe wdrożenie jest przeznaczone tylko do celów demonstracyjnych i nie reprezentuje wszystkich najlepszych rozwiązań dotyczących administrowania siecią, systemami lub aplikacjami.

Zanim rozpoczniesz

Prerequisites

Zanim zaczniesz, zapoznaj się z wymaganiami wstępnymi określonymi przez szablon katalogu usług, który planujesz wdrożyć. Wdroż wszelkie wymagane zasoby wstępne, które nie są jeszcze dostępne, i potwierdź, że masz pozwolenie na ich użycie.

Następnie zbierz nazwy zasobów, identyfikatory zasobów oraz inne wartości parametrów wymagane przez ten szablon. Wymagania wstępne, wymagane parametry i wartości domyślne mogą się różnić w zależności od szablonu i wersji. Nie zakładaj, że każdy szablon wymaga zasobów użytych w poniższym przykładzie.

Wdrażanie szablonu z katalogu usług

Szablony katalogu usług znajdziesz w Azure Public w inventory.xml pliku spisu.

Pobierz konkretny szablon, używając nazwy, którą znajdziesz w spisie (na przykład deploy-adminVM-1.0.1.json).

  1. Wyświetl listę dostępnych szablonów w katalogu usług:

    # Download the XML file
    $xmlUrl = "https://veservicecatalogprod.z22.web.core.windows.net/inventory.xml"
    $xmlContent = Invoke-WebRequest -Uri $xmlUrl -UseBasicParsing
    
    # Load the XML content
    [xml]$xml = $xmlContent.Content
    
    # Extract URLs from the XML file
    $urls = $xml.SelectNodes("//EnumerationResults/Blobs/Blob/Url")
    
    # List the URLs
    $urls | ForEach-Object { $_.InnerText }
    

    Konto magazynowania katalogu usług różni się w zależności od środowiska:

    • Azure: veservicecatalogprod.z22.web.core.windows.net
    • Azure Government:veservicecatalogfairfax.z2.web.core.usgovcloudapi.net
    • Azure Secret:veservicecatalogussec.z1.web.core.<AzureSecretDomain>
    • Azure Top Secret:veservicecatalogusnat.z2.web.core.<AzureTopSecretDomain>
  2. Pobierz wszystkie szablony. Kontynuuj skrypt PowerShell z poprzedniego kroku. Aby pobrać tylko jeden szablon, zastąp filtr wybranym przez Ciebie URL-em szablonu.

    # download all templates
    $urls | ForEach-Object {
        $url = $_.InnerText
        $fileName = Split-Path -Leaf $url
        Invoke-WebRequest -Uri $url -OutFile $fileName
    }
    
  3. Otwórz szablon i określ, jakie parametry musisz podać. W tym przykładzie użyj polecenia storageAccount/deploy-storage-account-1.0.0.json.

    Zwróć uwagę, które parametry są wymagane i które parametry mają wartości domyślne.

    Stwórz plik params.json, aby podać wartości parametrów:

    {
        "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
        "contentVersion": "1.0.0.0",
        "parameters": {
            "storageAccountName": {
                "value": ""
            },
            "virtualNetworkName": {
                "value": ""
            },
            "networkResourceGroupName": {
                "value": ""
            },
            "privateLinkSubnetName": {
                "value": ""
            },
            "privateDnsZoneResourceGroupName": {
                "value": ""
            },
            "keyVaultName": {
                "value": ""
            },
            "keyName": {
                "value": ""
            },
            "keyVaultResourceGroupName": {
                "value": ""
            },
            "userAssignedIdentityObject": {
                "value": {
                    "name":"",
                    "id":"",
                    "location":"",
                    "subscriptionName":""
                }
            }
        }
    }
    
  4. Pobierz zasoby enklawy, aby podać następujące wartości parametrów:

    • storageAccountName
    • virtualNetworkName
    • networkResourceGroupName
    • privateDnsZoneResourceGroupName
    • keyVaultName
    • keyVaultResourceGroupName
    • userAssignedIdentityObject.name
    • userAssignedIdentityObject.id
    • userAssignedIdentityObject.location
    • userAssignedIdentityObject.subscriptionName
    az rest --method get --uri "<enclave-resource-id>?api-version=<api-version>"
    

    Użyj obecnie obsługiwanej Microsoft.Mission wersji API z referencji Azure Enclave API (na przykład 2026-04-01).

    Użyj odpowiedzi oraz właściwości zasobów Azure, aby wypełnić wartości w params.json. Więcej informacji o operacjach i schematach API znajdziesz w referencji API Azure Enclave oraz w źródłach i specyfikacjach API Azure Enclave. Musisz także zidentyfikować privateLinkSubnetName i keyName.

  5. Wyświetlanie listy podsieci w sieci wirtualnej (privateLinkSubnetName)

    az network vnet subnet list --resource-group <resource-group-name> --vnet-name <vnet-name> --query "[].name"
    
  6. Pobierz nazwę klucza CMK (keyName)

    az keyvault key list --vault-name <keyvault-name> --query "[].name"
    
  7. Pobierz lokalizację userAssignedIdentityObject (userAssignedIdentityObject.location)

    az resource show --ids <user-assigned-identity-resource-id> --query location
    
  8. Uzyskiwanie nazwy subskrypcji

    az account show --subscription <subscription-id> --query name
    
  9. Wdrażanie szablonu

    az deployment group create --resource-group <resource-group-name> --template-file ./<template-downloaded-name> --parameters @./<parameter-file-name>
    

Weryfikowanie wdrożenia

  1. Sprawdź status wdrożenia.

    az deployment group show --resource-group <resource-group-name> --name <deployment-name> --query properties.provisioningState
    
  2. Potwierdź, że zasoby utworzone przez szablon są obecne.

    az resource list --resource-group <resource-group-name> --output table
    

Usuń wdrożenie

Jeśli nie planujesz zatrzymać tych zasobów, usuń tylko te utworzone przez to wdrożenie, aby uniknąć opłat Azure. Usuń grupę zasobów tylko wtedy, gdy jest dedykowana temu wdrożeniu i potwierdzisz, że nie zawiera żadnych zasobów, które musisz zachować.