Windows Admin Center ayarlarını yönetmek için PowerShell kullanma

Birden çok Windows Admin Center sunucusuna sahip büyük bir kuruluşunuz varsa, PowerShell'i kullanarak aynı anda birden çok sunucudaki bağlantıların ve uzantıların listesini yapılandırabilirsiniz.

Bağlantılarınızı içeri veya dışarı aktarmak için PowerShell kullanma (etiketlerle)

# 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

Bağlantıları içeri aktarmak için CSV dosya biçimi

CSV dosyasının biçimi aşağıdaki dört başlıkla başlar ve ardından her bağlantı yeni bir satırda gösterilir.

  • name: Bağlantının FQDN'sini.

  • type: Bağlantı türü. Windows Yönetim Merkezi'ne eklenen varsayılan bağlantılar için aşağıdaki dizelerden birini kullanın:

    Bağlantı türü Bağlantı dizesi
    Windows Server msft.sme.connection-type.server
    Yük devretme kümesi msft.sme.connection-type.cluster
  • tags: Dikey çizgiyle ayrılmış etiketler.

  • groupId: Paylaşılan bağlantıların sütunu. Paylaşılan bağlantı oluşturmak için bu sütundaki global değerini kullanın.

Note

Paylaşılan bağlantıların değiştirilmesi ağ geçidi yöneticileriyle sınırlıdır. Herhangi bir kullanıcı, kişisel bağlantı listelerini değiştirmek için PowerShell'i kullanabilir.

Bağlantıları içeri aktarmak için örnek CSV dosyası

"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

CSV dosyası büyük/küçük harfe duyarlıdır.

RDCMan bağlantılarını içeri aktarma

RDCMan kaydedilen bağlantıları bir dosyaya aktarmak için aşağıdaki betiği kullanın. Daha sonra dosyayı Windows Yönetim Merkezi'ne aktarabilir ve etiketleri kullanarak RDCMan gruplandırma hiyerarşinizi koruyabilirsiniz.

  1. Aşağıdaki kodu kopyalayıp PowerShell oturumunuza yapıştırın:

    #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"
    }
    
  2. CSV dosyası oluşturmak için aşağıdaki komutu çalıştırın:

    RdgToWacCsv -RDGfilepath "path\to\myRDCManfile.rdg"
    
  3. Sonuçta elde edilen CSV dosyasını Windows Yönetim Merkezi'ne aktarın. Bağlantı listesindeki etiketler RDCMan gruplandırma hiyerarşinizi temsil ediyor.

PowerShell ile Windows Admin Center uzantılarını yönetme

# 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

PowerShell ile Windows Admin Center uzantılarını değiştirmek için ağ geçidi yöneticisi olmanız gerekir.

Ek Kaynaklar