0

簡単な質問ですが、答えが気に入らないのではないかと心配しています。現在、アクセス許可の監査を実行し、フォルダーを再帰的に取得してから get-acl などを実行するためのスクリプトがあります。

ユーティリティの参照部分に次の行を使用しています。

$Shares = Get-WmiObject -Class Win32_Share -ComputerName $text | Where-Object { $_.type  -ne 1}

これは素晴らしく機能していますが、最低レベルの技術者がこれを実行できるようにしたいと考えています。彼らはすべての get-acl 呼び出しを実行するのに十分なアクセス許可を持っていますが、WMI 呼び出しを実行するために必要なサーバー管理者ではないため、私が書いたブラウザーをナビゲートすることはできません。

簡単に言えば、WMI を呼び出さずにサーバーから共有のリストを取得する方法はありますか? 私は自分のグーグルで方法を見つけることができません....しかし、すべてのユーザーが「\サーバー名\」をエクスプローラーに入力してそこにBAMを入力できるため、それを受け入れるのに苦労しています...それを模倣するパワーシェルの方法に違いありません。

すべてのヒント、概念、突飛なアイデアを歓迎します

4

2 に答える 2

1

これがうまくいくかどうかはわかりませんが、これを試してください:

([adsi]"WinNT://$computername/LanmanServer,FileService").Children | Select-Object @(
  @{n='CurrentUserCount';e={$_.CurrentUserCount}}
  @{n='Name';            e={$_.Name.Value}}
  @{n='Server';          e={$_.HostComputer | Split-Path -Leaf}}
  @{n='Path';            e={$_.Path.Value}}
  @{n='Description';     e={$_.Description.Value}}
)
于 2015-04-28T16:16:36.247 に答える
1

net view \\computername彼らのために働きますか?このコマンドnet view /?のヘルプを入力してください。コマンド プロンプトまたは PS プロンプトから実行します。

于 2013-05-17T13:04:53.033 に答える