【问题标题】:IPC between Credential Provider and a system service凭据提供程序和系统服务之间的 IPC
【发布时间】:2011-07-30 21:46:08
【问题描述】:

从系统服务与自定义凭据提供程序通信的最佳方式是什么? 是否可以通过消息泵发送消息? 我可以使用命名管道吗? 任何建议将不胜感激。

【问题讨论】:

    标签: c++ windows-7 credentials credential-providers


    【解决方案1】:

    凭据提供程序在用户的会话中运行,而系统服务在系统会话中运行。据我所知,这排除了 Windows 消息。消息还需要创建一个窗口,并且进程具有消息泵,而服务通常没有。

    我建议命名管道。系统服务可以创建管道并监听它。凭据提供程序的任何实例都会附加,然后可以发送消息。

    【讨论】:

    • 并非所有凭据提供程序都在用户会话中被调用。看看我的经验,在工作站登录、解锁场景(以及登录或解锁期间的密码更改场景)和 UAC 场景中,凭据提供程序被 LogonUI.exe 和 Consent.exe 相应地调用,并具有 LocalSystem 权限。在具有远程桌面连接和网络共享资源查看场景的场景中,凭据提供程序会被 mstsc.exe 和 explorer.exe 相应地调用,并具有当前登录用户的权限。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-14
    • 2017-09-27
    • 2022-01-21
    相关资源
    最近更新 更多