Utiliser PowerShell pour gérer les paramètres de Windows Admin Center
Si vous disposez d’une grande organisation avec plusieurs serveurs Windows Admin Center, vous pouvez utiliser PowerShell pour configurer la liste des connexions et extensions sur plusieurs serveurs à la fois.
Utilisez PowerShell pour importer ou exporter vos connexions (avec des balises)
# Load the module
Import-Module "$env:ProgramFiles\windows admin center\PowerShell\Modules\ConnectionTools"
# Available cmdlets: Export-Connection, Import-Connection
# Export connections (including tags) to a .csv file
Export-Connection "https://wac.contoso.com" -fileName "WAC-connections.csv"
# Import connections (including tags) from a .csv file
Import-Connection "https://wac.contoso.com" -fileName "WAC-connections.csv"
# Import connections (including tags) from .csv files, and remove any connections that are not explicitly in the imported file by using the -prune switch parameter
Import-Connection "https://wac.contoso.com" -fileName "WAC-connections.csv" -prune
Format de fichier CSV pour l’importation de connexions
Le format du fichier CSV commence par les quatre titres suivants, suivis de chaque connexion sur une nouvelle ligne.
name
: nom de domaine complet de la connexion.type
: type de connexion. Pour les connexions par défaut incluses dans Windows Admin Center, utilisez l’une des chaînes suivantes :Type de connexion Chaîne de connexion Windows Server msft.sme.connection-type.server
Cluster de basculement msft.sme.connection-type.cluster
tags
: balises séparées par une barre.groupId
: colonne pour les connexions partagées. Utilisez la valeurglobal
dans cette colonne pour établir une connexion partagée.
Note
La modification des connexions partagées est limitée aux administrateurs de passerelle. Tout utilisateur peut utiliser PowerShell pour modifier sa liste de connexions personnelles.
Exemple de fichier CSV pour l’importation de connexions
"name","type","tags","groupId"
"myServer.contoso.com","msft.sme.connection-type.server","hyperv"
"myDesktop.contoso.com","msft.sme.connection-type.windows-server","hyperv"
"teamcluster.contoso.com","msft.sme.connection-type.cluster","legacyCluster|WS2016","global"
"myHCIcluster.contoso.com,"msft.sme.connection-type.cluster","myHCIcluster|hyperv|JIT|WS2019"
"teamclusterNode.contoso.com","msft.sme.connection-type.server","legacyCluster|WS2016","global"
"myHCIclusterNode.contoso.com","msft.sme.connection-type.server","myHCIcluster|hyperv|JIT|WS2019"
Note
Le fichier CSV respecte la casse.
Importer des connexions RDCMan
Utilisez le script suivant pour exporter les connexions enregistrées dans RDCMan dans un fichier. Vous pouvez ensuite importer le fichier dans Windows Admin Center et gérer votre hiérarchie de regroupement RDCMan à l’aide de balises.
Copiez et collez le code suivant dans votre session PowerShell :
#Helper function for RdgToWacCsv function AddServers { param ( [Parameter(Mandatory = $true)] [Xml.XmlLinkedNode] $node, [Parameter()] [String[]] $tags, [Parameter(Mandatory = $true)] [String] $csvPath ) if ($node.LocalName -eq 'server') { $serverName = $node.properties.name $tagString = $tags -join "|" Add-Content -Path $csvPath -Value ('"'+ $serverName + '","msft.sme.connection-type.server","'+ $tagString +'"') } elseif ($node.LocalName -eq 'group' -or $node.LocalName -eq 'file') { $groupName = $node.properties.name $tags+=$groupName $currNode = $node.properties.NextSibling while ($currNode) { AddServers -node $currNode -tags $tags -csvPath $csvPath $currNode = $currNode.NextSibling } } else { # Node type isn't relevant to tagging or adding connections in Windows Admin Center } return } <# .SYNOPSIS Convert an .rdg file from Remote Desktop Connection Manager into a .csv that can be imported into Windows Admin Center, maintaining groups via server tags. This will not modify the existing .rdg file and will create a new .csv file .DESCRIPTION This converts an .rdg file into a .csv that can be imported into Windows Admin Center. .PARAMETER RDGfilepath The path of the .rdg file to be converted. This file will not be modified, only read. .PARAMETER CSVdirectory Optional. The directory you want to export the new .csv file. If it's not provided, the new file is created in the same directory as the .rdg file. .EXAMPLE C:\PS> RdgToWacCsv -RDGfilepath "rdcmangroup.rdg" #> function RdgToWacCsv { param( [Parameter(Mandatory = $true)] [String] $RDGfilepath, [Parameter(Mandatory = $false)] [String] $CSVdirectory ) [xml]$RDGfile = Get-Content -Path $RDGfilepath $node = $RDGfile.RDCMan.file if (!$CSVdirectory){ $csvPath = [System.IO.Path]::GetDirectoryName($RDGfilepath) + [System.IO.Path]::GetFileNameWithoutExtension($RDGfilepath) + "_WAC.csv" } else { $csvPath = $CSVdirectory + [System.IO.Path]::GetFileNameWithoutExtension($RDGfilepath) + "_WAC.csv" } New-item -Path $csvPath Add-Content -Path $csvPath -Value '"name","type","tags"' AddServers -node $node -csvPath $csvPath Write-Host "Converted $RDGfilepath `nOutput: $csvPath" }
Pour créer un fichier CSV, exécutez la commande suivante :
RdgToWacCsv -RDGfilepath "path\to\myRDCManfile.rdg"
Importez le fichier CSV résultant dans Windows Admin Center. Les balises de la liste de connexions représentent votre hiérarchie de regroupement RDCMan.
Gérer les extensions Windows Admin Center avec PowerShell
# Add the module to the current session
Import-Module "$env:ProgramFiles\windows admin center\PowerShell\Modules\ExtensionTools"
# Available cmdlets: Get-Feed, Add-Feed, Remove-Feed, Get-Extension, Install-Extension, Uninstall-Extension, Update-Extension
# List feeds
Get-Feed "https://wac.contoso.com"
# Add a new extension feed
Add-Feed -GatewayEndpoint "https://wac.contoso.com" -Feed "\\WAC\our-private-extensions"
# Remove an extension feed
Remove-Feed -GatewayEndpoint "https://wac.contoso.com" -Feed "\\WAC\our-private-extensions"
# List all extensions
Get-Extension "https://wac.contoso.com"
# Install an extension (locate the latest version from all feeds and install it)
Install-Extension -GatewayEndpoint "https://wac.contoso.com" "msft.sme.containers"
# Install an extension (latest version from a specific feed, if the feed is not present, it will be added)
Install-Extension -GatewayEndpoint "https://wac.contoso.com" "msft.sme.containers" -Feed "https://aka.ms/sme-extension-feed"
# Install an extension (install a specific version)
Install-Extension "https://wac.contoso.com" "msft.sme.certificate-manager" "0.133.0"
# Uninstall-Extension
Uninstall-Extension "https://wac.contoso.com" "msft.sme.containers"
# Update-Extension
Update-Extension "https://wac.contoso.com" "msft.sme.containers"
Note
Vous devez être administrateur de passerelle pour modifier les extensions Windows Admin Center avec PowerShell.