web-dev-qa-db-ja.com

Windows Server 2012リモートデスクトップ-標準ユーザー間でメッセージを送信する

標準ユーザー間のメッセージ(同じサーバー上)を許可するためのポリシーやレジストリの変更などを誰かが知っていますか...

昇格されたcmdプロンプトまたはタスクマネージャーはもちろん機能しますが、標準のアカウントで機能する必要があります。

H:\>msg scott hi
Error sending message to session RDP-Tcp#0 : Error 5
Error [5]:Access is denied.

(これはWindows Server 2012です)

また、サーバー2008 r2で何かを設定したことを思い出しましたが、それが何であったかを思い出せないので、実行できます-

ありがとう!

5
Scott Kramer

そのため、MicrosoftはServer 2012のリモートデスクトップセッションホスト構成コンソールを廃止しました。サーバーマネージャーでは引き続きいくつかの操作を実行できますが、RDP-Tcp接続オブジェクトのプロパティを変更できるかどうかはわかりません。これは非常に迷惑です。

ただし、WMIでもこれを行うことができます。

以下は、Win32_TSAccount WMIクラスのModifyPermissionsメソッドに関するMSDNドキュメントです。

http://msdn.Microsoft.com/en-us/library/windows/desktop/aa383776(v = vs.85).aspx

PowerShellから、まず権限を変更するアカウントを取得します。

$TSAccount = @(Get-WmiObject -Namespace Root\CIMv2\TerminalServices -Query "SELECT * FROM Win32_TSAccount WHERE TerminalName='RDP-TCP' AND AccountName='BUILTIN\\Remote Desktop Users'")

これで、$TSAccountに次のようなアカウントオブジェクトが1つあるはずです。

...
AccountName        : BUILTIN\Remote Desktop Users
AuditFail          : 0
AuditSuccess       : 0
Caption            :
Description        :
InstallDate        :
Name               :
PermissionsAllowed : 289
PermissionsDenied  : 0
SID                : S-1-5-32-555
Status             :
TerminalName       : RDP-Tcp
PSComputerName     : SERVER01

PermissionsAllowedはビットマップです。そのPermissionsAllowedプロパティに値が7のWINSTATION_MSGを追加したいとします。

Foreach($account In $TSAccount)
{
    $account.ModifyPermissions(7,1)
}

したがって、変更前の10進数の289のPermissionsAllowedビットマップは、バイナリでは次のようになります。

100100001

しかし、その7番目のビットを反転させたので、次のようになります。

110100001

これを10進数に戻すと、417になります。

MSの誰かがおそらく、彼らが私たちをそんなに難しくするために私たちがこれをすることを望んでいませんでしたね?

2
Ryan Ries