Quickstart: Deploy een servicecatalogustemplate met behulp van de CLI

Azure Enclave is een cloudnetwerkservice waarmee organisaties met zeer gevoelige gegevens workloads snel op grote schaal kunnen uitrollen en beheren in commerciële en air-gapped Azure-clouds. In deze quickstart gaat u als volgt te werk:

  • Deploy een servicecatalogustemplate door gebruik te maken van Azure CLI-commando's.

Note

Deze voorbeeldimplementatie is alleen bedoeld voor demodoeleinden en vertegenwoordigt niet alle aanbevolen procedures voor netwerk-, systemen- of toepassingsbeheer.

Voordat u begint

Prerequisites

Bekijk voordat je begint de vereisten die zijn gespecificeerd in de dienstcatalogustemplate die je wilt inzetten. Implementeer alle benodigde vereiste resources die nog niet beschikbaar zijn, en bevestig dat je toestemming hebt om ze te gebruiken.

Verzamel vervolgens de resourcenamen, resource ID's en andere parameterwaarden die door dat sjabloon vereist zijn. De vereisten, vereiste parameters en standaardwaarden kunnen per sjabloon en versie variëren. Ga er niet van uit dat elke template de middelen vereist die in het volgende voorbeeld zijn gebruikt.

Een sjabloon implementeren vanuit de servicecatalogus

Je kunt de dienstcatalogussjablonen vinden in Azure Public in het inventory.xml inventarisatiebestand.

Download een specifieke template door de naam te gebruiken die je in de inventaris vindt (bijvoorbeeld, deploy-adminVM-1.0.1.json).

  1. Geef de beschikbare sjablonen in de servicecatalogus weer:

    # 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 }
    

    Het opslagaccount voor de servicecatalogus verschilt per omgeving:

    • 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. Download elke sjabloon Ga door met het PowerShell-script van de vorige stap. Om slechts één sjabloon te downloaden, vervang je het filter door de sjabloon-URL die je hebt gekozen.

    # download all templates
    $urls | ForEach-Object {
        $url = $_.InnerText
        $fileName = Split-Path -Leaf $url
        Invoke-WebRequest -Uri $url -OutFile $fileName
    }
    
  3. Open de template en bepaal welke parameters je moet invoeren. In dit voorbeeld gebruikt u storageAccount/deploy-storage-account-1.0.0.json.

    Let op welke parameters vereist zijn en welke parameters standaardwaarden hebben.

    Maak een params.json bestand aan om de parameterwaarden te geven:

    {
        "$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. Haal de enclave-resources op om de volgende parameterwaarden te verkrijgen:

    • 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>"
    

    Gebruik een momenteel ondersteunde Microsoft.Mission API-versie uit de Azure Enclave API-referentie (bijvoorbeeld 2026-04-01).

    Gebruik de response en de Azure resource properties om de waarden in params.jsonte vullen. Voor meer API-operaties en schema's, zie de Azure Enclave API-referentie en de broncode en specificaties van Azure Enclave API. Je moet ook privateLinkSubnetName en keyName identificeren.

  5. De subnetten in het virtuele netwerk weergeven (privateLinkSubnetName)

    az network vnet subnet list --resource-group <resource-group-name> --vnet-name <vnet-name> --query "[].name"
    
  6. CMK-sleutelnaam ophalen (keyName)

    az keyvault key list --vault-name <keyvault-name> --query "[].name"
    
  7. De locatie van userAssignedIdentityObject ophalen (userAssignedIdentityObject.location)

    az resource show --ids <user-assigned-identity-resource-id> --query location
    
  8. De abonnementsnaam ophalen

    az account show --subscription <subscription-id> --query name
    
  9. De sjabloon implementeren

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

De implementatie valideren

  1. Controleer de status van de uitrol.

    az deployment group show --resource-group <resource-group-name> --name <deployment-name> --query properties.provisioningState
    
  2. Bevestig dat de bronnen die door het sjabloon zijn gemaakt aanwezig zijn.

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

De implementatie verwijderen

Als je niet van plan bent deze resources te behouden, verwijder dan alleen de resources die door deze deployment zijn aangemaakt om Azure-kosten te vermijden. Verwijder de resourcegroep alleen als deze uitsluitend voor deze implementatie bestemd is en je hebt bevestigd dat er geen resources zijn die je moet bewaren.