Usare PowerShell per gestire le impostazioni di Windows Admin CenterUse PowerShell to manage Windows Admin Center settings

Se appartieni a un'organizzazione di grandi dimensioni con più server Windows Admin Center, puoi configurare l'elenco di connessioni ed estensioni in più server contemporaneamente usando PowerShell.If you have a large organization with multiple Windows Admin Center servers, you can use PowerShell to configure the list of connections and extensions on multiple servers at a time.

Usare PowerShell per importare o esportare le connessioni (con tag)Use PowerShell to import or export your connections (with tags)

# 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 using the -prune switch parameter 
Import-Connection "https://wac.contoso.com" -fileName "WAC-connections.csv" -prune

Formato file CSV per l'importazione di connessioniCSV file format for importing connections

Il formato del file CSV inizia con le quattro intestazioni "name","type","tags","groupId", seguite da ciascuna connessione in una nuova riga.The format of the CSV file starts with the four headings "name","type","tags","groupId", followed by each connection on a new line.

name è il nome di dominio completo della connessione.name is the FQDN of the connection

type è il tipo di connessione.type is the connection type. Per le connessioni predefinite incluse in Windows Admin Center userai uno degli elementi seguenti:For the default connections included with Windows Admin Center, you will use one of the following:

Tipo di connessioneConnection type Stringa di connessioneConnection string
Windows ServerWindows Server msft.sme.connection-type.servermsft.sme.connection-type.server
PC Windows 10Windows 10 PC msft.sme.connection-type.windows-clientmsft.sme.connection-type.windows-client
Cluster di failoverFailover Cluster msft.sme.connection-type.clustermsft.sme.connection-type.cluster
Cluster iperconvergenteHyper-Converged Cluster msft.sme.connection-type.hyper-converged-clustermsft.sme.connection-type.hyper-converged-cluster

tags viene usato per elementi separati da pipe.tags are pipe-separated.

groupId viene usato per le connessioni condivise.groupId is used for shared connections. Usa il valore global in questa colonna per rendere la connessione condivisa.Use the value global in this column to make this a shared connection.

Nota

La modifica delle connessioni condivise spetta solo agli amministratori del gateway. Tutti gli utenti possono usare PowerShell per modificare l'elenco di connessioni personale.Modifying the shared connections is limited to gateway administrators - any user can use PowerShell to modify their personal connection list.

File CSV di esempio per l'importazione di connessioniExample CSV file for importing connections

"name","type","tags","groupId"
"myServer.contoso.com","msft.sme.connection-type.server","hyperv"
"myDesktop.contoso.com","msft.sme.connection-type.windows-client","hyperv"
"teamcluster.contoso.com","msft.sme.connection-type.cluster","legacyCluster|WS2016","global"
"myHCIcluster.contoso.com,"msft.sme.connection-type.hyper-converged-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"

Importazione di connessioni di RDCmanImport RDCman connections

Usa lo script seguente per esportare le connessioni salvate in RDCman in un file.Use the script below to export saved connections in RDCman to a file. Puoi quindi importare il file in Windows Admin Center, mantenendo la gerarchia di raggruppamento di RDCMan con l'uso di tag.You can then import the file into Windows Admin Center, maintaining your RDCMan grouping hierarchy using tags. Prova.Try it out!

  1. Copia e incolla il codice seguente nella sessione PowerShell:Copy and paste the code below into your PowerShell session:

    #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 WAC
     }
     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 wish to export the new .csv file. If 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"
    }
    
  2. Per creare un file CSV, esegui il comando seguente:To create a .CSV file, run the following command:

    RdgToWacCsv -RDGfilepath "path\to\myRDCManfile.rdg"
    
  3. Importa il file CSV risultante in Windows Admin Center e nell'elenco delle connessioni tutta la gerarchia di raggruppamento di RDCMan sarà rappresentata da tag.Import the resulting .CSV file in to Windows Admin Center, and all your RDCMan grouping hierarchy will be represented by tags in the connection list. Per informazioni dettagliate, vedi Usare PowerShell per importare o esportare le connessioni (con tag).For details, see Use PowerShell to import or export your connections (with tags).

Gestire le estensioni di Windows Admin Center con PowerShellManage Windows Admin Center extensions with 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"

Nota

Per modificare le estensioni di Windows Admin Center con PowerShell, devi avere le autorizzazioni di amministratore del gateway.You must be gateway administrator to modify Windows Admin Center extensions with PowerShell.

Altri riferimentiAdditional References