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.
Dans ce quickstart, vous apprenez à utiliser Azure PowerShell pour créer une tâche de stockage, l’assigner à un compte de stockage Azure pour exécution, puis examiner les résultats de l’exécution. Cet exemple applique une politique d’immuabilité basée sur le temps à tous les documents Microsoft Word existant dans le compte de stockage.
Conditions préalables
Un abonnement Azure. Consultez créer un compte gratuitement.
Un compte de stockage Azure. Consultez créer un compte de stockage. Cet exemple nécessite également un support d’immutabilité au niveau de la version pour définir la politique d’immutabilité sur les blobs.
Actuellement, vous ne pouvez assigner que des tâches à exécuter sur des comptes de stockage dans la même région que les tâches de stockage.
Le rôle Propriétaire des données blob de stockage est attribué à votre identité utilisateur dans le contexte du compte de stockage ou du groupe de ressources.
Rôle personnalisé attribué à votre identité utilisateur dans le contexte du groupe de ressources qui contient les actions RBAC nécessaires pour affecter une tâche à un compte de stockage. Consultez Autorisations requises pour affecter une tâche.
.NET Framework version 4.7.2 ou ultérieure installé. Pour plus d’informations, consultez Télécharger .NET Framework.
PowerShell version
5.1ou ultérieure.
Installer le module PowerShell
Assurez-vous d’avoir la dernière version de PowerShellGet installée.
Install-Module PowerShellGet -Repository PSGallery -ForceFermez puis rouvrez la console PowerShell.
Installez la version 7.1.1-preview ou ultérieure du module PowerShell Az.Storage . Vous devrez peut-être désinstaller les autres versions du module PowerShell. Pour en savoir plus sur l’installation d’Azure PowerShell, voir Installer Azure PowerShell avec PowerShellGet.
Install-Module Az.Storage -Repository PsGallery -RequiredVersion 7.1.1-preview -AllowClobber -AllowPrerelease -ForceInstallez le module Az.StorageAction .
Install-Module -Name Az.StorageAction -Repository PSGallery -ForcePour plus d’informations sur l’installation des modules PowerShell, consultez Installer le module Azure PowerShell.
Connectez-vous à votre compte Azure
Ouvrez une fenêtre de commande Windows PowerShell, puis connectez-vous à votre compte Azure avec la
Connect-AzAccountcommande et suivez les instructions à l’écran.Connect-AzAccountSi votre identité est associée à plusieurs abonnements et que PowerShell ne vous invite pas à sélectionner l’abonnement, définissez votre abonnement actif sur l’abonnement du compte de stockage que vous souhaitez utiliser. Dans cet exemple, remplacez la valeur d’espace réservé
<subscription-id>par l’ID de votre abonnement.Select-AzSubscription -SubscriptionId <subscription-id>
Créer une tâche de stockage
Définissez une condition à l’aide de JSON. Une condition est un prédicat logique composé d’une ou plusieurs propositions. Chaque clause contient une propriété, une valeur et un opérateur. Dans le json suivant, la propriété est
Name, la valeur est.docx, et l’opérateur estendsWith. Cette clause autorise uniquement les opérations sur les documents Microsoft Word.$conditions = "[[endsWith(Name, '.docx')]]"Pour obtenir la liste complète des propriétés et des opérateurs, consultez les conditions de tâche de stockage.
Conseil / Astuce
Vous pouvez ajouter plusieurs conditions à la même chaîne et les séparer par une virgule.
Définissez chaque opération à l’aide de la
New-AzStorageActionTaskOperationObjectcommande.L’opération suivante établit une politique d’immuabilité.
$policyoperation = New-AzStorageActionTaskOperationObject ` -Name SetBlobImmutabilityPolicy ` -Parameter @{"untilDate" = (Get-Date).AddDays(1); "mode" = "locked"} ` -OnFailure break ` -OnSuccess continueL’opération suivante définit une balise d’index d’objet blob dans les métadonnées d’un document Word.
$tagoperation = New-AzStorageActionTaskOperationObject -Name SetBlobTags ` -Parameter @{"tagsetImmutabilityUpdatedBy"="StorageTaskQuickstart"} ` -OnFailure break ` -OnSuccess continueCréez une tâche de stockage à l’aide de la
New-AzStorageActionTaskcommande et transmettez les conditions et opérations que vous avez définies précédemment. Cet exemple crée une tâche de stockage nomméemystoragetaskdans le groupequickstartresourcegroupde ressources dans la région USA Ouest.$task = New-AzStorageActionTask ` -Name mystoragetask ` -ResourceGroupName quickstartresourcegroup ` -Location westus ` -Enabled ` -Description 'my powershell storage task' ` -IfCondition $conditions ` -IfOperation $policyoperation,$tagoperation ` -EnableSystemAssignedIdentity:$true
Créer une affectation
Une affectation de tâche de stockage spécifie un compte de stockage sur lequel la tâche s’exécute. Il inclut des paramètres de configuration d’exécution qui vous aident à cibler des blobs spécifiques, et à spécifier quand et à quelle fréquence la tâche s’exécute. Vous devez ajouter des attributions de tâches pour chaque compte de stockage où vous souhaitez que la tâche s’exécute.
Créez une attribution de tâche de stockage à l’aide de la
New-AzStorageTaskAssignmentcommande. L’affectation suivante cible lemycontainerconteneur d’un compte nommémystorageaccount. Cette affectation précise que la tâche ne s’exécute qu’une seule fois, et sauvegarde le rapport d’exécution dans le conteneur blobstorage-tasks-report. La tâche est planifiée pour s’exécuter en10minutes à partir de l’heure actuelle.$startTime = (Get-Date).AddMinutes(10) New-AzStorageTaskAssignment ` -ResourceGroupName quickstartresourcegroup ` -AccountName mystorageaccount ` -name mystoragetaskAssignment ` -TaskId $task.Id ` -ReportPrefix "storage-tasks-report" ` -TriggerType RunOnce ` -StartOn $startTime.ToUniversalTime() ` -Description "task assignment" ` -Enabled:$true ` -TargetPrefix "mycontainer/"Accordez à la tâche de stockage l’autorisation d’effectuer des opérations sur le compte de stockage cible. Attribuez le rôle
Storage Blob Data Ownerà l’identité managée affectée par le système de la tâche de stockage à l’aide de la commandeNew-AzRoleAssignment.New-AzRoleAssignment ` -ResourceGroupName quickstartresourcegroup ` -ResourceName mystorageaccount ` -ResourceType "Microsoft.Storage/storageAccounts" ` -ObjectId $task.IdentityPrincipalId ` -RoleDefinitionName "Storage Blob Data Owner"
Afficher les résultats d’une exécution de tâche
Après l’exécution de la tâche, obtenez un résumé du rapport d’exécution pour chaque attribution en utilisant la commande Get-AzStorageActionTasksReport.
Get-AzStorageActionTasksReport `
-ResourceGroupName quickstartresourcegroup `
-StorageTaskName mystoragetask | Format-List
Le SummaryReportPath champ de chaque résumé de rapport contient un chemin vers un rapport d’exécution détaillé. Le rapport utilise le format CSV et capture chaque objet traité, y compris le conteneur du blob, le nom du blob, l’opération effectuée et le résultat de l’opération.
Nettoyer les ressources
Supprime toutes les ressources que tu as créées. Dans ce démarrage rapide, vous avez créé le compte de stockage et la tâche de stockage dans le même groupe de ressources. Supprimer ce groupe de ressources supprime toutes ces ressources.
Remove-AzResourceGroup -Name $ResourceGroup