给定一对用户和一个特权,我需要确定一个用户是否有权限在服务器上。 以下是我的设置:
最后一点的示例场景:
现在,如果我有inputDomainA \ User1和SeRemoteInteractiveLogonRight我需要到达是或否回答。 所以我打开机器上的本地策略,注意哪些组是根据我所感兴趣的权利也列出,然后去服务器pipe理员,看看什么在组成员,然后我需要看看这些组中的任何组的成员等等。
我有一个直觉,可以更容易。 当我发现AccessChk工具时,我非常兴奋。持续了整整三分钟,我发现它只列出了直接的关系,所以组内的用户不会被列出。
现在我猜测,可以合并来自AccessChk的结果,以便我可以检查用户是否属于AccessChk返回的任何组,但是鉴于它不是一个域,而是几个我不知道如何处理这个。 另外AccessChk输出似乎不区分组和用户。
编辑 :本着不落入XY问题的陷阱,我真正需要做的是确保在一组服务器上没有用作IIS应用程序池标识的特定用户帐户具有SeInteractiveLogonRight或SeRemoteInteractiveLogonRight特权。 我对IIS部分没有任何问题,但是检查某个帐户的最后一个步骤是我正在努力寻找一个简单的方法来检查。 我也想自动检查,因为这是需要定期完成的。
访问令牌没有关于权限的信息,只有关于特权的信息。
你需要做的是这样的:
以上依赖于账号身份对应的进程(和令牌)的存在。 在你的情况下,这不应该是一个问题。 在这种情况下,您可以尝试使用Active Directory查找Token-Groups计算属性 。 本文列出了一些如何解决这个问题的方法。