Windows
如何使用 PowerShell 列出隱藏的管理共享?
我正在嘗試編寫一個腳本來審核一些 HIPAA 敏感伺服器上的共享文件夾。我使用 獲取一個共享列表就好了
gwmi Win32_Share
,但是當我使用 獲取每個共享的權限時gwmi Win32_LogicalShareSecuritySetting
,隱藏的管理共享沒有列出。我意識到這是出於顯而易見的原因,它不像權限更改,但我想要某種跡象表明這實際上是一個管理共享。目前我正在使用 try-catch 塊來處理錯誤並踢出“找不到權限”消息。
有什麼方法可以使用 PowerShell 僅列出隱藏的管理共享?
嘗試(將“.”更改為您的遠端電腦名稱):
[String] $Local:strComputerName = "."; [System.Management.ManagementBaseObject[]] $Local:arrShares = @(); [System.Management.ManagementBaseObject] $Local:objShare = $null; $arrShares = Get-WMIObject -class "Win32_Share" -namespace "root\CIMV2" -computername $strComputerName -ErrorAction SilentlyContinue | Where-Object { $_.Type -eq 2147483648 }; if ( $? ) { foreach ( $objShare in $arrShares ) { # List attributes (other attributes include AccessMask, AllowMaximum, Description, # InstallDate, MaximumAllowed, Status and Type). Write-Host -Object ( "Name : {0}" -f $objShare.Name ); Write-Host -Object ( "Path : {0}" -f $objShare.Path ); Write-Host -Object ( "Caption : {0}" -f $objShare.Caption ); Write-Host -Object ""; } #foreach } else { Write-Host -Object "ERROR."; } #else-if