我想创建一个用于检查并通知服务器上是否存在远程 session 的应用程序。我不知道Bomgar,gotomeeting,gotoassist等远程访问产品是否使用终端服务。
看起来GetSystemMetrics'
SM_REMOTECONTROL
和SM_REMOTESESSION
仅引用通过Windows Terminal Services连接的远程 session 。
我刚刚看过post,但这是指PowerShell session 。
因此,我的一般问题是,哪些.NET API系列可以处理创建,配置和检测远程访问?
自发布以来进行编辑:
我刚刚在Microsoft TechNet中查看了此其他post,看来我需要获取进程列表,并找出rdpinit.exe
和rdpshell.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/