我有一个带有命名管道绑定的IIS应用程序。当我打开powershell并运行Get-ChildItem '\\.\pipe\'
时,我看到一长串命名管道,其中包含疯狂的名称,如GUID。其中一些以iisipm开头,我认为这意味着它们是由IIS创建的。如何以编程方式确定哪些管道与我的IIS应用程序相关联?
答案 0 :(得分:0)
命名管道只是用于通过SMB进行I / O的文件系统上的文件。您要问的是,“我的桌面上有一个文件,使用它的是什么文件?!”我会告诉您,您的问题稍微抽象一些,因为有一些内置的方法可以通过安全描述符上的SACL和使用安全事件日志来计算对普通文件的读/写。虽然这仍然可以通过命名管道来完成,但您必须为每个命名管道添加一个SACL,并确保启用正确的审计以捕获它。
在这种情况下,完成所需内容的最简单方法是使用Process Explorer查找命名管道的所有打开句柄,并找到具有句柄的IIS工作进程。
要做到这一点:
..并确定哪个进程是您的IIS进程,然后确定它有一个句柄打开的管道。
编辑:Handle.exe(也来自Sysinternals)也应提供此信息。