.net - 检查远程 session

标签 .net powershell network-programming remote-access windows-server-2012

我想创建一个用于检查并通知服务器上是否存在远程 session 的应用程序。我不知道Bomgar,gotomeeting,gotoassist等远程访问产品是否使用终端服务。

看起来GetSystemMetrics' SM_REMOTECONTROLSM_REMOTESESSION仅引用通过Windows Terminal Services连接的远程 session 。

我刚刚看过post,但这是指PowerShell session 。

因此,我的一般问题是,哪些.NET API系列可以处理创建,配置和检测远程访问?

自发布以来进行编辑:

我刚刚在Microsoft TechNet中查看了此其他post,看来我需要获取进程列表,并找出rdpinit.exerdpshell.exe是否在每个进程的进程列表中,但这将涵盖一些知名的远程工具。访问产品,是否有API可以做到这一点?

最佳答案

NetSessionEnum中的netapi32.dll函数如何? Boe Prox上有一篇很棒的文章:https://learn-powershell.net/2016/08/07/viewing-net-sessions-using-powershell-and-pinvoke/

已经有p / invoke调用的预编写PowerShell脚本,但是如果您要自己滚动,请使用p / invoke.net作为签名:http://www.pinvoke.net/default.aspx/netapi32.NetSessionEnum

作为附带说明,MS发布了一篇博客文章,其中包含一个脚本,该脚本在几个月前详细描述了对注册表的ACL修改,以实际阻止此操作,因为它允许Windows计算机的非管理员远程 session 枚举。

关于.net - 检查远程 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44827915/

相关文章:

c# - 在 List<object> 中查找对象的更有效方法

ruby - rspec --init 不工作/`mkd ir':无效参数 - ./C: (Errno::EINVAL)

powershell - 忽略 Windows PowerShell (ISE) 中的错误级别 != 0

asp.net - 我不断收到 "docker build"需要 1 个参数的错误

c++ - 如何控制socket速率?

打开使用 System.IO.Compression 创建的 ZipArchive 时出现 C# .NET 缺少方法异常

.net - MSBuild AfterBuild 消息未实时显示

c# - System.Object.GetType 如何抛出 NullRefernceException

php - 在 PHP 中测量网络带宽

c++ - Boost asio网络分离发送和接收