SCVMMでVMへのアクセス権をPowerShellで付ける方法

SCVMMのコンソールにはバグが多く,VMをCloudに登録した後に,アクセス権が正しく付けられない場合があります。

VMのプロパティ画面で,Accessをクリックし,Shared with these Self-Service users or rolesという項目から,権限グループであるUser Roleを追加しようとするのですが,そのたびにSCVMMのコンソールが強制終了してしまうというバグがあります。

そのような場合には,PowerShellを使ってSCVMMにアクセスし,権限グループであるUser Roleを割り当てるという方法がとれます。

PowerShellを使ってUser Roleを割り当てる方法


まず,Virtual Machine Manager Command Shellを立ち上げます。

Virtual Machine Manager Command Shellを立ち上げる

Virtual Machine Manager Command Shellを立ち上げる

そして,SCVMM_Server_NameVM_NameUser_Role_Nameの部分を自分の環境に置き換え,以下の2行を実行します。

$Resource = Get-SCVirtualMachine –VMMServer SCVMM_Server_Name –Name "VM_Name"
Grant-SCResource -Resource $Resource -UserRoleName "User_Role_Name"

これで,SCVMMにおけるVMへのアクセス権(User Role)を割り当てることができました。

複数のVMに対してUser Roleグループを割り当てたい場合

複数のVMに対して実行するためのPowerShellコマンドは以下の通りです。

$array_name = @('VM01','VM02','VM03')
foreach($str_name in $array_name ){
  $Resource = Get-SCVirtualMachine -VMMServer SCVMM_Server_Name -Name $str_name;
  Grant-SCResource -Resource $Resource -UserRoleName "User_Role_Name"
}

Foreachで複数回しているだけですが,案外使う場面は多いです。
以上,SCVMMにおけるVMへのアクセス権であるUser RoleをPowerShellコマンドで割り当てる方法でした。

ご質問があれば,コメント欄にどうぞ。

コメント