2010-05-21 05:58:22 UTC
I have an application that runs as a number of Microsoft Windows
services. One service is designed to accept a connection, via a named
pipe (server-side), and to execute a command issued over the named
pipe, by a user.
This design has worked well for many years now.
I now have a requirement to provide some kind of audit information.
For example, what command was requested, at what date and time, and by
I have been reading about various access tokens etc, and also about
the ImpersonateNamedPipeClient function etc. I'm still not clear I can
do what I need to do.
Essentially, is there a way to determine the Windows user name of a
named-pipe requester? In other words, when the server service notices
that the client software has connected to the pipe, the server program
will read the command from the pipe - is there a way I can find out
who is requesting that command?
Thanks for any help.