小编And*_*ykh的帖子

检查给定用户是否具有给定权限

给定一对用户和权限,我需要确定用户是否在服务器上具有权限。以下在我的设置中是正确的:

  • 服务器是域的一部分,但不是域控制器
  • 基础设施中存在多个具有信任关系的域
  • 有时,用户(本地、域或来自不同域)可以属于本地组,因为他们属于某个属于本地组的其他组(域或本地),而不是直接属于该组。

最后一点的示例场景:

  • User1 属于 DomainA 中的组 TeamA
  • DomaimA\TeamA 是 DomainB\SpecialAccess 的成员
  • DomainB\SpecialAccess 是 DomainB\DomainAdmins 的成员
  • 最后 DomainB\DomainAdmins 属于本地管理员组
  • 本地管理员组具有 SeRemoteInteractiveLogonRight 特权

现在,如果我输入了 DomainA\User1 和 SeRemoteInteractiveLogonRight,我需要回答是或否。所以我打开机器上的本地策略,注意右边列出了哪些组我也很感兴趣,然后转到服务器管理器并查看组成员的内容,然后我需要查看这些组中任何组的成员等等。

我有一种直觉,它可以更容易。当我发现AccessChk 实用程序时,我真的很兴奋。它持续了整整三分钟,让我发现它只列出了直接关系,因此不会列出组内的用户。

现在我猜有可能将 AccessChk 的结果组合起来,以便我可以检查用户是否属于 AccessChk 返回的任何组,但鉴于它不是单个域,而是其中的几个域,我是不知道如何解决这个问题。此外,AccessChk 输出似乎没有区分组和用户。

编辑:本着不陷入 XY 问题陷阱的精神,我真正需要做的是确保在一组服务器上,用作 IIS 应用程序池标识的特定用户帐户没有 SeInteractiveLogonRight 或 SeRemoteInteractiveLogonRight 权限。我对 IIS 部分没有任何问题,但是根据特权检查帐户的最后一步是我正在努力寻找一种简单的检查方法。我也想自动化检查,因为这是需要定期进行的事情。

windows permissions users windows-server-2008-r2

16
推荐指数
1
解决办法
958
查看次数

如何更改 Powershell/winrm 2.0 中的侦听器端口?

相当 一些 地方用于更改端口WinRM的命令侦听这个样子的:

winrm set winrm/config/Listener?Address=*+Transport=HTTP @{Port="8888"}
Run Code Online (Sandbox Code Playgroud)

但是,这对我不起作用。我得到的错误是:

Error: Invalid use of command line. Type "winrm -?" for help.
Run Code Online (Sandbox Code Playgroud)

显然,互联网不会错,所以我做错了。问题是,如何正确地做到这一点?

windows powershell winrm

5
推荐指数
1
解决办法
2万
查看次数