本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Grant-SmbShareAccess」コマンドレットを解説します。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、コンピュータの共有フォルダにアクセス権を追加する「Grant-SmbShareAccess」コマンドレットです。
「共有フォルダ」はWindows環境における最も手軽なファイル共有手段ですが、共有アクセス権が適切に設定されていないと、「使いたい人が使えない」といった問題や「使ってはいけない人が使える」という思わぬ事故の原因になってしまう恐れもあります。
共有アクセス権の設定は共有フォルダを作成するタイミングで実施可能であることは、本連載64回で「New-SmbShare」コマンドレットを紹介した際に解説しましたが、人事異動や社員の入社といったタイミングでメンテナンスすることが不可欠です。
Grant-SmbShareAccessは、共有フォルダに設定済みの共有アクセス権をメンテナンスする際に使用するコマンドレットで、ユーザーやグループを追加したり、権限を付与したりすることができます。
現在設定されている共有アクセス権に関しては、本連載第64回の記事中で紹介した「Get-SmbShareAccess」コマンドレットで取得可能ですので、当該記事を参考にしてください。
オプション | 意味 |
---|---|
-Name | 共有アクセス権を追加したい共有フォルダの共有名を指定する。必須 |
-AccountName | 共有アクセス権を追加したいユーザー名/グループ名を指定する。必須 |
-AccessRight | 許可したい権限(Full《フルコントロール》、Change《変更》、 Read《読み取り》、Custom《カスタム》)を指定する。必須 |
-Force | 実行時に確認なしで処理したい場合に指定する。省略可能 |
共有アクセス権を追加する場合は、対象となる「共有名」、追加したい「ユーザー名」または「グループ名」、ユーザーもしくはグループに与えたい「共有アクセス権」を全てオプションで指定してGrant-SmbShareAccessコマンドレットを実行します(画面1)。なお、Grant-SmbShareAccessコマンドレットは管理者権限で実行する必要があります。
Grant-SmbShareAccess -Name "IT_Folder" -AccountName "woods" -AccessRight Full
画面1では、Grant-SmbShareAccessコマンドレット実行前にGet-SmbShareAccessコマンドレットを実行してアクセス権限を確認しています。Grant-SmbShareAccessコマンドレットによってユーザーアカウントが権限とともに追加されていることが分かります。
また、Grant-SmbShareAccessコマンドレットも実行時に確認プロンプトが表示されるので、[y]キーで応答しています。これはスクリプトによる自動化の阻害要因になりますので、確認なしで処理を進める「-Force」オプションが用意されています(画面2)
Grant-SmbShareAccess -Name "IT_Folder" -AccountName "wolff" -AccessRight Full -Force
画面2の環境はワークグループ構成のサーバであるため、アカウント名のみを「-AccountName」オプションで指定していますが、ドメイン環境の場合はアカウントがローカルアカウントなのか、ドメインアカウントなのか明確に指定する必要があります。
ドメインアカウントの場合は「ドメイン名¥アカウント名」、ローカルアカウントの場合は「サーバ名¥アカウント名」を-AccountNameオプションで指定します。
同一種類の共有アクセス権であれば、「-AccountName」オプションにアカウントを複数指定することで複数のユーザーを一括で追加することができます(画面3)。
Grant-SmbShareAccess -Name "IT_Folder" -AccountName "stenson","simpson" -AccessRight Change -Force
ドメイン環境に限り、-AccountNameオプションにコンピュータアカウント指定することが可能です(画面4)。
Grant-SmbShareAccess -Name "ShareFolder" -AccountName "INET\ad01$" -AccessRight Full -Force
Microsoft MVP for Cloud and Datacenter Management(2012-2023)。現業の傍ら、コミュニティーイベントでの登壇や著作にてMicrosoftテクノロジーに関する技術情報の発信、共有を続けている。ネットワークやハードウェアといった物理層に近いところが大好きな、昔ながらのインフラ屋さん。得意技はケーブル整線。近著は『詳解! Windows Server仮想ネットワーク』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.