本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Set-SmbPathAcl」コマンドレットを解説します。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、共有フォルダに設定されているアクセス権を「フォルダのアクセス権」として設定する「Set-SmbPathAcl」コマンドレットです。
Windowsのファイルシステムである「NTFS(NT File System)」や「ReFS(Resilient File System)」では、ファイルやフォルダに対し「アクセス権」(Access Control List:ACL)を設定できます。
本連載の第82回から3回に分けて紹介した「Set-Acl」コマンドレットを使用することで、ファイルやフォルダにアクセス権を設定できます。しかし、ネットワーク経由でフォルダ(ファイル)にアクセスする場合、2つのアクセス権、すなわち「共有アクセス権」と「フォルダ(ファイル)アクセス権」を有していないと、ユーザーはフォルダ(ファイル)にアクセスできません。
通常はこの2つのアクセス権を個別に設定しますが、Set-SmbPathAclコマンドレットを使用することで、共有アクセス権を「フォルダのアクセス権」として設定でき、個別に設定する手間を省くことができます。
しかしながら、このコマンドレットを使用する際は挙動をしっかりと理解する必要があるため、考え方と実行例を参考に理解を深めてください。
オプション | 意味 |
---|---|
-ShareName | アクセス権を設定する共有フォルダを指定する。必須 |
Set-SmbPathAclコマンドレットは、「共有フォルダのACLを、共有設定されているフォルダのACLとして設定する」コマンドレットになります。
従って、共有アクセス権とフォルダのアクセス権に差異があった場合は、共有アクセス権として設定されているACLをフォルダのACLとして「設定」します。アクセス権を設定する対象は「共有設定されているフォルダ」となります。
このフォルダに格納されているファイルやサブフォルダに関しては、「継承」の設定が有効でない限り適用されません。また、設定されるフォルダアクセス権は「上位フォルダから継承したアクセス権」と「共有アクセス権」となります。この場合、共有設定しているフォルダで親フォルダからの継承を無効化していても、継承が有効になった上で共有アクセス権の設定がコピーされます。
では、具体的な例を見ていきましょう。
例えば、「TestFolder_01」というフォルダがあり、画面1のようなフォルダアクセス権が設定されているとします。継承設定は無効になっていることが確認できます。
Copyright © ITmedia, Inc. All Rights Reserved.