如何在没有Active Directory的情况下从pipe理员组中删除用户?

上下文:我是一个新的初级系统pipe理员,我inheritance了一个约12台Windows机器,生产和备份文件服务器和一个SQL服务器的小型办公室工作组。 文件服务器上的所有用户帐户都是pipe理员组的成员。 我意识到这造成了一个漏洞。 此外,黄铜希望文件服务器上的某些目录不受一般用户的限制。

我如何从pipe理员组中删除我的用户,并将他们分成两层常规帐户,以避免不便,生产停机等。

如果可行,我都是自动化的,所以我不怕在.​​bat文件或PowerShell中的脚本,虽然我的PowerShell是生锈的,我的.bat脚本是hacky。

    你应该build立一个域名。

    • 认真。 我不想pipe理没有域(Active Directory)的3台Windows计算机,更不用说十二个了。
    • 如果黄铜要限制某些目录的访问级别,那么以可pipe理的方式这样做的唯一方法是使用Active Directory,即使对于“仅12”的机器/用户也是如此。
    • 最好的select,你自己,以及。 “pipe理一堆工作组计算机”是简历中一个很好的废话。 “为公司创build,configuration和pipe理一个新的Windows Active Directory域”在简历中是相当不错的一个项目。

    假设你不能build立一个域(和Server 2003),我的首选项是sysseternals suite的一部分 psexec进行远程连接,然后是NET USER和NET GROUP命令来进行实际的添加。 这将允许你做出改变,而不会像以下那样将人们从计算机上剔除。

    1. 下载SysInternals套件。
    2. 打开一个命令行(cmd.exe)
    3. 连接到要进行更改的计算机
      • psexec \\thecomputeryouwanttomakechangeson\ cmd
    4. 执行所需的NET USER或NET GROUP命令。
      • NET LOCALGROUP Administrators someuser /ADD
      • NET LOCALGROUP Administrators someotheruser /DEL
      • 提供的链接有更好的例子和完整的语法 ,只要记住你在这种情况下使用LOCALGROUPLOCALUSER

    您可以通过以下方式获取用户当前在pipe理员组中的列表:

     net localgroup administrators > userlist.txt 

    然后,您可以将用户从该输出中拆分为tier1和tier2列表,然后在列表中进行循环。

     $tier1file="c:\path\to\tier1users.txt" $tier2file="c:\path\to\tier2users.txt" foreach ($user in get-content $tier1file) { net localgroup administrators $user /del net localgroup tier1 $user /add } foreach ($user in get-content $tier2file) { net localgroup administrators $user /del net localgroup tier2 $user /add } 

    或类似的东西。

    如果所有机器的设置完全相同,那么您可能会比这更加奇特,但没有AD的机器往往不相同。