Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Commencez avec Azure DevTest Labs en utilisant l'API REST Azure. Azure DevTest Labs englobe un groupe de ressources, telles que des machines virtuelles et des réseaux Azure. Cette infrastructure vous permet de mieux gérer ces ressources en spécifiant des limites et des quotas. L’API REST Azure vous permet de gérer les opérations sur les services hébergés dans la plateforme Azure.
Prerequisites
Un compte Azure avec un abonnement actif. Créez un compte gratuitement.
Module PowerShell Az installé. Vérifiez que vous disposez de la dernière version. Si nécessaire, exécutez
Update-Module -Name Az.
Préparer le corps de la demande
Préparez le corps de la demande qui sera consommé par l’appel REST.
Copiez et collez la syntaxe JSON suivante dans un fichier appelé body.json. Enregistrez le fichier sur votre ordinateur local ou dans un compte de stockage Azure.
{
"properties": {
"labStorageType": "Standard"
},
"location": "westus2",
"tags": {
"Env": "alpha"
}
}
Connectez-vous à votre abonnement Azure :
Fournissez une valeur appropriée pour les variables, puis exécutez le script.
$subscription = "subscriptionID" $resourceGroup = "resourceGroupName" $labName = "labName" $file = "path\body.json"À partir de votre station de travail, connectez-vous à votre abonnement Azure avec l’applet de commande PowerShell Connect-AzAccount et suivez les instructions à l’écran.
# Sign in to your Azure subscription $sub = Get-AzSubscription -ErrorAction SilentlyContinue if(-not($sub)) { Connect-AzAccount } # If you have multiple subscriptions, set the one to use # Set-AzContext -SubscriptionId $subscription
Créer le corps de la demande pour l’envoyer
La syntaxe de la requête PUT est la suivante :
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}?api-version=2018-09-15.
Exécutez les scripts PowerShell suivants pour transmettre la valeur de la requête à un paramètre. Le contenu du corps de la requête est également transmis à un paramètre.
# build URI
$URI = "https://management.azure.com/subscriptions/$subscription/resourceGroups/$resourceGroup/providers/Microsoft.DevTestLab/labs/$labName`?api-version=2018-09-15"
# build body
$body = Get-Content $file
Obtenir un jeton d’authentification
Utilisez les commandes suivantes pour récupérer un jeton d’authentification :
$azContext = Get-AzContext
$azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
$profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
$token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
$authHeader = @{
'Content-Type'='application/json'
'Authorization'='Bearer ' + $token.AccessToken
}
Appeler l’API REST
Utilisez les commandes suivantes pour appeler l’API REST et passer en revue la réponse.
# Invoke the REST API
$response = Invoke-RestMethod -Uri $URI -Method PUT -Headers $authHeader -Body $body
# Review output
$response | ConvertTo-Json
La réponse doit ressembler au texte suivant :
{
"properties": {
"labStorageType": "Standard",
"mandatoryArtifactsResourceIdsLinux": [
],
"mandatoryArtifactsResourceIdsWindows": [
],
"createdDate": "2021-10-27T20:22:49.7495913+00:00",
"premiumDataDisks": "Disabled",
"environmentPermission": "Reader",
"announcement": {
"title": "",
"markdown": "",
"enabled": "Disabled",
"expired": false
},
"support": {
"enabled": "Disabled",
"markdown": ""
},
"provisioningState": "Creating",
"uniqueIdentifier": "uniqueID"
},
"id": "/subscriptions/ContosoID/resourcegroups/groupcontoso/providers/microsoft.devtestlab/labs/myotherlab",
"name": "myOtherLab",
"type": "Microsoft.DevTestLab/labs",
"location": "westus2",
"tags": {
"Env": "alpha"
}
}
Nettoyer les ressources
Si vous ne souhaitez pas continuer à utiliser ce laboratoire, supprimez-le en procédant comme suit :
Fournissez une valeur appropriée pour les variables, puis exécutez le script.
$subscription = "subscriptionID" $resourceGroup = "resourceGroupName" $labName = "labName"Exécutez le script suivant pour supprimer le labo nommé d’Azure DevTest Labs.
# build URI $URI = "https://management.azure.com/subscriptions/$subscription/resourceGroups/$resourceGroup/providers/Microsoft.DevTestLab/labs/$labName`?api-version=2018-09-15" # obtain access token $azContext = Get-AzContext $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile) $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId) $authHeader = @{ 'Content-Type'='application/json' 'Authorization'='Bearer ' + $token.AccessToken } # Invoke the REST API Invoke-RestMethod -Uri $URI -Method DELETE -Headers $authHeader
Étapes suivantes
Dans ce guide de démarrage rapide, vous avez créé un laboratoire à l’aide de l’API REST Azure. Pour savoir comment accéder au labo, passez au tutoriel suivant :