SynologyのNASを一通り設定して思ったのが、
アクセス権限の一覧をエクスポートしたい!
Synologyの管理画面を一通り見たのですが、アクセス権限をエクスポートする機能はどうやら無さそうでした。
いちいちGUIでアクセス権限を共有フォルダの設定を一つづつ確認していくのは非常に面倒。
50個以上も共有フォルダを作っているので、そもそも目視だと間違えそう。。。
ってことで自力で一覧をエクスポートする手段を考えてみました。
思った以上に綺麗にエクスポートできて満足しています。
Synology共有フォルダのアクセス権限はpowershellでエクスポート可能
Windows Serverならpowershellで一発なのに、、、
ん?
Synologyにもpowershellでアクセス権限が取れるのか?
取れましたw
コマンドはこんな感じ。
Get-Acl "\\192.168.100.10\営業" |Select-object @{Label="Path";Expression={Convert-Path $_.Path}}, Owner, AccessToString |Export-Csv C:\work\accesslist.csv -encoding Default
Get-Acl "\\192.168.100.10\総務" |Select-object @{Label="Path";Expression={Convert-Path $_.Path}}, Owner, AccessToString |Export-Csv C:\work\accesslist.csv -Append -encoding Default
2つ目のコマンドはオプションで「-Append」を付けています。
最初に作ったCSVに追記するように仕込んでいる感じです。
Ownerのプロパティは不要かもしれないので、そこはお好みで。
AccessToStringがアクセス権限のプロパティなので、これさえあれば私の場合用が済みました。
ちなみにsynologyのNASはドメイン参加しています。
SynologyのNASをドメイン参加せずにGet-Aclでアクセス権限を取得しても、SynologyのローカルアカウントはSSID(数字の羅列)で表記されるので何のことやら分からないと思います。
Synologyのローカルアカウントをpowershellで取得するのは厳しいですが、ドメインのグループやドメインユーザーであれば一覧を取ることは可能。
SynologyのNASでアクセス権限を取得するために必要な条件
ではまとめます。
ドメイン参加しているようであれば是非powershellを使って一覧取得してみてください。
凄く楽ですよ。
コメント