使用访问令牌共享进程管理员权限
Posted
技术标签:
【中文标题】使用访问令牌共享进程管理员权限【英文标题】:sharing process admin privileges using Access Tokens 【发布时间】:2012-03-24 01:01:06 【问题描述】:我有 2 个进程。其中之一是在管理员帐户下运行,第二个是在没有管理进程权限的用户帐户下运行。他们需要看到彼此并比较路径,从哪里执行这个过程。但是第一个(用户)进程无法获得第二个进程的路径。使用CreateToolhelp32Snapshot
-> OpenProcess(PROCESS_QUERY_LIMITED_INFORMATION)
-> QueryFullProcessImageName
获取路径不适用,因为它适用于Vista、Win7及更高版本,我需要针对低版本Win的解决方案。
那么,如何授予用户进程查看管理进程路径的权限,或者如何使用访问令牌或使用SetNamedSecurityInfo
为用户共享管理进程的权限?
最好使用delphi。
【问题讨论】:
您是否有权更改管理流程的工作方式? 【参考方案1】:你可以改变这个,是的 (*) - 但你真的应该重新考虑你的逻辑。例如,管理员进程可以打开具有预定义名称的共享 MMF 并存储您需要的任何信息。您可以将此 MMF 共享给您想要的任何用户或组(您应该考虑只授予只读访问权限)。这比将整个流程对外开放要安全得多。
(*) 在管理进程中:OpenProcess,获取令牌和安全描述符,修改 DACL 以包含所需用户帐户或组的新权限,设置令牌/SD。
【讨论】:
以上是关于使用访问令牌共享进程管理员权限的主要内容,如果未能解决你的问题,请参考以下文章
无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是不是有访问权限。
网络无法访问,你可能没有权限使用网络资源,请与管理员联系,拒绝访问!
\\***无法访问。您可能没有权限使用网络资源。请与这台服务器的管理员联系以查明您是不是有访问权限。