有没有办法无需重新启动即可刷新计算机组成员身份?

有没有办法无需重新启动即可刷新计算机组成员身份?

我正在使用 Windows Server 2008 R2,并在计算机 ComputerA 中以“网络服务”帐户运行 Windows 服务。此 Windows 服务想要访问共享文件夹(在另一台计算机 ComputerB 上),该共享文件夹授予组 GroupA 的读取权限。因此,我需要将 ComputerA 的计算机帐户添加到 GroupA 并重新启动 ComputerA。

我的问题是:有没有办法让组成员身份立即生效,而无需重新启动 ComputerA?

答案1

For Windows 2008 and higher:

psexec -s -i -d cmd.exe

C:\Windows\system32>whoami
nt authority\system

-- List the session 0 tickets (0x3e7 is the machine session 0)
klist -lh 0 -li 0x3e7  

-- Purge the session 0 tickets  
klist -lh 0 -li 0x3e7 purge  

Should display:  

Current LogonId is 0:0x3e7  
        Deleting all tickets:  
        Ticket(s) purged!  

PSExec 是 Microsoft 免费下载的 SysInternals。


为了消除任何疑惑,此过程绝对会刷新计算机的组成员身份,并允许适用于安全组的组策略现在应用于计算机,而无需重新启动计算机。这已在 Windows Server 2012 R2 和 Windows Server 2008 R2 以及通用安全组上进行了测试和验证。简短版本如下:

  • psexec -s -i -d cmd.exe
  • klist tgt(查看当前票证,记下其大小。另请注意,由于您以系统身份运行,因此当前登录 ID 为 0x3e7)
  • 将计算机添加到安全组。(如果适用,请留出复制时间)
  • klist purge
  • nltest /dsgetdc:domain.com(运行此命令或任何其他连接到网络资源并强制 TGT 请求的命令)
  • klist tgt(查看当前票证,记下大小。它应该稍微大一些。请注意,whoami /groups 不会反映新成员资格)

此时,可以退出系统命令提示符。

  • gpupdate /force
  • gpresult /h gpresult.html

查看 gpreport,它现在应该显示组策略已应用。

答案2

我认为重新启动 netlogon 服务会产生同样的效果,不确定整体影响会是什么。不过可以肯定的是,用户会暂时断开与用户的连接。

答案3

在我的域中,这仅适用于网络驱动器:

@echo off
net use M: /d /y
gpupdate /force
net use M: \\10.11.12.233\Archivos /persistent:Yes
explorer.exe M:

相关内容