2

リモート マシンがあり、ログインしているすべてのユーザーの詳細を取得したいと考えています。このリンクを使用して、次のようにcassiaを使用してコードを作成しました

    ITerminalServicesManager manager = new TerminalServicesManager();
    using (ITerminalServer server = manager.GetRemoteServer("SERVERIPADDRESS"))
    {
        server.Open();
        foreach (ITerminalServicesSession session in server.GetSessions())
        {
            NTAccount account = session.UserAccount;
            string userName = session.UserName;

            if (account != null)
            {
                Console.WriteLine(account);
            }
        }
    }

UserIdここで、特定のandを使用してこのサーバーに接続したいと思いますPassword。どうすればいいですか?そのためのオプションはありません。

私が試したのは、サーバーのIPアドレスを指定してソリューションを構築したことです。次に、別のユーザーとしてファイルを試し、exe資格情報を提供しましたが、ログインに失敗しました。

誰でも助けてください。私は準備ができており、Cassia を捨てる用意がありますが、有効なソリューションが必要です。

そして、この質問にタグを付けるのを手伝ってください。私はそれについて理解できません。

4

2 に答える 2

3

Dan Ports が述べたように、なりすましは間違いなく進むべき道です。

偽装を使用した後も接続できない場合は、サーバー以外の OS (Windows 7 または Windows 8.1 など)で Cassia リクエストが機能するように、次の場所でレジストリを編集する必要があることがわかりました。

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer

この場所で、AllowRemoteRPCの値を1に変更します。

于 2015-06-17T19:11:38.577 に答える
1

偽装を使用する必要があります。基になるリモート デスクトップ サービス API は、パラメーターとして資格情報を渡すことをサポートしていません。なりすましの詳細については、 Cassia issue 32とそのコメントのリンクを参照してください。

于 2013-01-26T15:38:54.113 に答える