Gérer les informations d’identification dans Azure Automation
Une ressource d’informations d’identification Automation détient un objet constitué d’informations d’identification de sécurité, comme un nom d’utilisateur et un mot de passe. Les runbooks et les configurations DSC utilisent des applets de commande qui acceptent un objet PSCredential pour l’authentification. Ils peuvent aussi extraire le nom d’utilisateur et le mot de passe de l’objet PSCredential
à fournir à une application ou à un service nécessitant une authentification.
Remarque
Les ressources sécurisées dans Azure Automation incluent les informations d'identification, les certificats, les connexions et les variables chiffrées. Ces ressources sont chiffrées et stockées dans Azure Automation en utilisant une clé unique générée pour chaque compte Automation. Azure Automation stocke la clé dans le coffre de clés géré par le système. Avant de stocker une ressource sécurisée, Automation charge la clé à partir de Key Vault, puis l’utilise pour chiffrer la ressource.
Remarque
Pour plus d’informations sur la visualisation ou la suppression de données personnelles, consultez Demandes de la personne concernée pour le RGPD – Général, Demandes de la personne concernée pour le RGPD – Azure ou Demandes de la personne concernée pour le RGPD – Windows, en fonction de votre domaine et de vos besoins spécifiques. Pour plus d’informations sur le Règlement général sur la protection des données (RGPD), consultez la section relative au RGPD du Centre de gestion de la confidentialité de Microsoft et la section relative au RGPD du Portail d’approbation de services.
Cmdlets PowerShell utilisées pour accéder aux informations d’identification
Les cmdlets du tableau suivant créent et gèrent les informations d’identification Automation avec PowerShell. Elles sont fournies avec les Modules Az.
Applet de commande | Description |
---|---|
Get-AzAutomationCredential | Récupère un objet CredentialInfo contenant les métadonnées relatives aux informations d’identification. La cmdlet ne récupère pas l’objet PSCredential proprement dit. |
New-AzAutomationCredential | Crée de nouvelles informations d’identification Automation. |
Remove-AzAutomationCredential | Supprime des informations d’identification Automation. |
Set-AzAutomationCredential | Définit les propriétés d’informations d’identification Automation existantes. |
Autres cmdlets utilisées pour accéder aux informations d’identification
Les cmdlets du tableau suivant permettent d’accéder aux informations d’identification enregistrées dans vos runbooks et vos configurations DSC.
Applet de commande | Description |
---|---|
Get-AutomationPSCredential |
Récupère un objet PSCredential à utiliser dans un runbook ou une configuration DSC. Dans la plupart des cas, il est préférable d’utiliser cette cmdlet interne plutôt que la cmdlet Get-AzAutomationCredential , car cette dernière ne récupère que les informations d’identification, qu’il n’est généralement pas utile de passer à une autre cmdlet. |
Get-Credential | Obtient des informations d’identification avec une invite pour le nom d’utilisateur et le mot de passe. Cette cmdlet fait partie du module Microsoft.PowerShell.Security par défaut. Voir Modules par défaut. |
New-AzureAutomationCredential | Crée des informations d’identification. Cette cmdlet fait partie du module Azure par défaut. Voir Modules par défaut. |
Pour récupérer des objets PSCredential
dans votre code, vous devez importer le module Orchestrator.AssetManagement.Cmdlets
. Pour plus d’informations, consultez Gestion des modules dans Azure Automation.
Import-Module Orchestrator.AssetManagement.Cmdlets -ErrorAction SilentlyContinue
Remarque
Il est déconseillé d’utiliser des variables dans le paramètre Name
de Get-AutomationPSCredential
. Leur utilisation peut contrarier la découverte des dépendances entre les runbooks ou les configurations DSC et les informations d’identification au moment de la conception.
Fonctions Python qui accèdent aux informations d’identification
La fonction figurant dans le tableau suivant est utilisée pour accéder aux informations d’identification dans un runbook Python 2 et 3. Les runbooks Python 3 sont actuellement en préversion.
Fonction | Description |
---|---|
automationassets.get_automation_credential |
Récupère des informations sur une ressource d’informations d’identification. |
Remarque
Importez le module automationassets
en haut de votre runbook Python pour accéder aux fonctions des ressources.
Créer une ressource d’informations d’identification
Vous pouvez créer une ressource d’informations d’identification à partir du portail Azure ou de Windows PowerShell.
Créer une ressource d’informations d’identification avec le portail Azure
À partir de votre compte Automation, dans le volet gauche, sélectionnez Informations d’identification sous Ressources partagées.
Dans la page Informations d’identification, sélectionnez Ajouter des informations d’identification.
Dans le volet Nouvelles informations d’identification, entrez un nom d’informations d’identification approprié en suivant votre convention de nommage.
Tapez votre ID d’accès dans le champ Nom d’utilisateur.
Pour les deux champs de mot de passe, entrez votre clé d’accès secrète.
Si la case Authentification multifacteur est cochée, décochez-la.
Cliquez sur Créer pour enregistrer la nouvelle ressource d’informations d’identification.
Remarque
Azure Automation ne prend pas en charge les comptes d’utilisateurs qui utilisent l’authentification multifacteur.
Créer une ressource d’informations d’identification avec Windows PowerShell
Les exemples suivants montrent comment créer une ressource d’informations d’identification Automation. Un objet PSCredential
est d’abord créé à partir du nom et du mot de passe, et est ensuite utilisé pour créer la ressource d’informations d’identification. Au lieu de cela, vous pouvez utiliser l’applet de commande Get-Credential
pour inviter l’utilisateur à taper un nom et un mot de passe.
$user = "MyDomain\MyUser"
$pw = ConvertTo-SecureString "PassWord!" -AsPlainText -Force
$cred = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $user, $pw
New-AzureAutomationCredential -AutomationAccountName "MyAutomationAccount" -Name "MyCredential" -Value $cred
Obtenir une ressource d’informations d’identification
Un runbook ou une configuration DSC récupère une ressource d’informations d’identification à l’aide de la cmdlet Get-AutomationPSCredential
interne. Cette cmdlet récupère un objet PSCredential
que vous pouvez utiliser avec une cmdlet qui nécessite des informations d’identification. Vous pouvez également récupérer les propriétés de l’objet d’informations d’identification pour les utiliser individuellement. L’objet a des propriétés pour le nom d’utilisateur et le mot de passe sécurisé.
Remarque
La cmdlet Get-AzAutomationCredential
ne récupère pas d’objet PSCredential
pouvant être utilisé pour l’authentification. Elle fournit uniquement des informations sur les informations d’identification. Si vous devez utiliser des informations d’identification dans un runbook, vous devez les récupérer sous la forme d’un objet PSCredential
à l’aide de Get-AutomationPSCredential
.
Vous pouvez aussi utiliser la méthode GetNetworkCredential pour récupérer un objet NetworkCredential qui représente une version non sécurisée du mot de passe.
Exemple de runbook textuel
L’exemple suivant montre comment utiliser des informations d’identification PowerShell dans un runbook. Il récupère les informations d’identification et affecte le nom d’utilisateur et mot de passe associés à des variables.
$myCredential = Get-AutomationPSCredential -Name 'MyCredential'
$userName = $myCredential.UserName
$securePassword = $myCredential.Password
$password = $myCredential.GetNetworkCredential().Password
Vous pouvez également utiliser des informations d’identification pour vous authentifier auprès d’Azure avec Connect-AzAccount après vous être d’abord connecté avec une identité managée. Cet exemple utilise une identité managée affectée par le système.
# Ensures you do not inherit an AzContext in your runbook
Disable-AzContextAutosave -Scope Process
# Connect to Azure with system-assigned managed identity
$AzureContext = (Connect-AzAccount -Identity).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription -DefaultProfile $AzureContext
# Get credential
$myCred = Get-AutomationPSCredential -Name "MyCredential"
$userName = $myCred.UserName
$securePassword = $myCred.Password
$password = $myCred.GetNetworkCredential().Password
$myPsCred = New-Object System.Management.Automation.PSCredential ($userName,$securePassword)
# Connect to Azure with credential
$AzureContext = (Connect-AzAccount -Credential $myPsCred -TenantId $AzureContext.Subscription.TenantId).context
# set and store context
$AzureContext = Set-AzContext -SubscriptionName $AzureContext.Subscription `
-TenantId $AzureContext.Subscription.TenantId `
-DefaultProfile $AzureContext
Exemple de runbook graphique
Vous pouvez ajouter une activité pour la cmdlet Get-AutomationPSCredential
interne à un runbook graphique en cliquant avec le bouton droit sur les informations d’identification dans le volet Bibliothèque de l’éditeur graphique et en sélectionnant Ajouter au canevas.
L’image suivante montre un exemple d’utilisation d’informations d’identification dans un Runbook graphique. Dans ce cas, les informations d'identification fournissent l'authentification d'un runbook auprès des ressources Azure, comme décrit dans Utiliser Microsoft Entra ID dans Azure Automation pour s'authentifier auprès d'Azure. La première activité récupère les informations d’identification ayant accès à l’abonnement Azure. L’activité de connexion de compte utilise ensuite ces informations d’identification pour assurer l’authentification pour les activités qui suivent. Un lien de pipeline est utilisé ici, car le paramètre Get-AutomationPSCredential
attend un seul objet.
Utiliser des informations d’identification dans une configuration DSC
Même si les configurations DSC dans Azure Automation peuvent utiliser des ressources d’informations d’identification au moyen de Get-AutomationPSCredential
, elles peuvent aussi transmettre des ressources d’informations d’identification via des paramètres. Pour plus d’informations, consultez Compilation de configurations dans Azure Automation DSC.
Étapes suivantes
- Pour en savoir plus sur les applets de commande utilisées pour accéder aux certificats, consultez Gérer les modules dans Azure Automation.
- Pour obtenir des informations générales sur les runbooks, consultez Exécution d’un runbook dans Azure Automation.
- Pour obtenir des informations détaillées sur les configurations DSC, consultez Vue d’ensemble d’Azure Automation State Configuration.