客户端模拟(授权)

模拟 是线程使用与拥有线程的进程不同的安全信息执行的能力。 通常,服务器应用程序中的线程模拟客户端。 这样,服务器线程就可以代表该客户端访问服务器上的对象或验证对客户端自己的对象的访问。

Microsoft Windows API 提供以下函数来开始模拟:

对于大多数模拟,模拟线程可以通过调用 RevertToSelf 函数还原到自己的安全上下文。 例外情况是 RPC 模拟,RPC 服务器应用程序在其中调用 RpcRevertToSelfRpcRevertToSelfEx 还原为其自己的安全上下文。

注意:如果要从 Win32 服务模拟用户,并且调用依赖于用户环境变量的 API,则可能需要先调用 RegDisablePredefinedCache,然后才能进行模拟。