捐血一袋救人一命

2024年6月28日 星期五

Windows電腦認證管理員

Windows認證管理員

控制台 > 使用者帳戶 > 認證管理員

不知何時,Windows Update 之後,原先儲存的遠端桌面密碼都沒用了,每次登入都要手動輸入密碼,真的很煩!
使用 cmdkey 指令去查詢,會發現原先儲存的密碼類型,都變成網域密碼,微軟真的很雞婆

讀取目前所有遠端桌面(Terminal Service)的認證清單,並全部移除

$(cmdkey /list:TERMSRV/*) | Where-Object { $_ -match "目標: " } | ForEach-Object {
    $target = $_
    $target = $target -replace "目標: ","" -replace " ",""
    (cmdkey /delete:$target)
}

重新用一般標準方式儲存,類型會是標準

cmdkey /generic:TERMSRV/[IP] /user:[ACCOUNT] /pass:"[PASSWORD]"

讀取目前遠端桌面所有認證資訊

$Patten = "目標: |類型: |使用者: "
$List = @()
$Info = $(cmdkey /list:TERMSRV/*) | Select-String -Pattern $Patten 
For ($i=0; $i -le $Info.Count; $i+=3){
    $List += New-Object -TypeName PSOBject -Property @{
        "Target" = $Info[$i] -replace "\s+目標:\s+",""
        "Type" = $Info[$i+1] -replace "\s+類型:\s+",""
        "User" = $Info[$i+2] -replace "\s+使用者:\s+",""
    }
}
$Domain = $List | Where-Object { $_.Type -eq "網域密碼" }
If ($Domain.Count -eq 0){
    $List | Sort-Object -Property Target
}Else{
    ForEach($Key in $Domain){
        (cmdkey /delete:$Key.Target)
    }
}

0 意見: