本地组
当机器安装完系统后,会自动创建默认的本地组。通过执行命令net localgroup可以查询出本机上的本地组,如图所示:
属于本地组的用户具有在本地计算机上执行各种任务的权限和能力。每个本地组都有一个唯一的安全标识符(Security identifier,SID),通过执行如下命令可以查询出本地组所对应的SID。
wmic group get name,sid
如图所示,查询本地组对应的SID。
可以将本地用户帐户、域用户帐户、计算机帐户和安全组添加到本地组中。但是不能将本地组添加到域组中。
下面我们来看看一些比较常见的本地组与描述。
Administrators
该组的成员对服务器具有完全的控制权,并可以根据需要向用户分配用户权限和访问控制权限。administrator帐户是该组的一个默认成员,该组的SID恒为S-1-5-32-544。
如图所示,可以看到administrator用户默认在administrators组中,且administrators组的SID为S-1-5-32-544。
当服务器加入域时,域管理员默认对域内所有机器都具有管理权限,这是因为域的Domain Admins组默认会被添加到域内所有机器的本地Administrators组内。因为此组可以完全控制服务器,因此请谨慎向该组中添加用户。
如图所示,可以看到Domain Admins组默认在本地administrators组中。
Users
此组的成员可以执行公共任务,例如运行应用程序、使用本地打印机和网络打印机以及锁定服务器等。Authenticated Users帐户是该组的一个默认成员,该组的SID恒为S-1-5-32-545。
如图所示,可以看到Authenticated Users用户默认在Users组中,且Users组的SID为S-1-5-32-545。
当服务器加入域时,域内的所有域用户默认可以登录除域控外的域内所有主机,这是因为域的Domain Users组默认会被添加到域内所有机器的本地Users组内。因此,在域中创建的任何用户帐户都将成为此组的成员。
如图所示,可以看到Domain Users组默认在本地Users组中。
Guests
该组的成员是临时访问帐户,其成员在登录时会创建一个临时配置文件,当该成员注销时,该配置文件将被删除。Guest帐户是此组的默认成员。该组的SID恒为S-1-5-32-546。
如图所示,可以看到Guest用户默认在Guests组中,且Guests组的SID为S-1-5-32-546。
Backup Operators
该组的成员可以备份和恢复服务器上的文件,而不考虑保护这些文件的任何权限。这是因为执行备份的权限优先于所有的文件权限。该组中默认没有成员,该组的SID恒为S-1-5-32-551。
如图所示,可以看到Backup Operators组中默认没有用户,且该组的SID为S-1-5-32-551。
Remote Desktop Users
该组的成员可以远程登录到服务器。该组中默认没有成员,该组的SID恒为S-1-5-32-555。
如图所示,可以看到Remote Desktop Users组中默认没有用户,且该组的SID为S-1-5-32-555。
Power Users
该组的成员可以创建用户帐户,然后修改和删除他们已创建的帐户。它们可以创建本地组,然后从已创建的本地组中添加或删除用户。它们还可以从高级用户、用户和来宾组中添加或删除用户。成员可以创建共享资源,并管理他们已创建的共享资源。它们不能拥有文件的所有权、备份或恢复目录、加载或卸载设备驱动程序,或管理安全和审计日志等权限。该组中默认没有成员。该组的SID恒为S-1-5-32-547。
如图所示,可以看到Power Users组中默认没有用户,且该组的SID为S-1-5-32-547。
Network Configuration Operators
该组的成员可以更改TCP/IP设置,并更新和发布TCP/IP地址。该组中默认没有成员。该组的SID恒为S-1-5-32-556。
如图所示,可以看到Network Configuration Operators组中默认没有用户,且该组的SID为S-1-5-32-556。
域组
在活动目录中,除了有本地组的概念外,还有域组的概念。域组用于将用户帐户、计算机帐户和其他组收集到可管理的单元中。对组进行管理而不是对单个用户进行管理有助于简化网络维护和管理。
域组的objectcategory属性为CN=Group,CN=Schema,CN=Configuration,DC=xie,DC=com,因此可以通过如下命令使用adfind查询域内所有的组。
adfind.exe -f "(objectcategory=group)" -dn
如图所示,使用adfind查找域内所有的组。
1:组的类型
域组根据其类型可以分为安全组和通讯组,并且我们平时所见到的绝大部分的域组都是安全组。如Domain Users、Domain Computers、Domain Admins等都是安全组。当域功能级别大于Windows 2000时,安全组和通讯组之间可以相互转换。
如图所示,在新建组的时候这里可以选择组的类型有安全组(S)和通讯组(D)。
注:虽然可以将联系人添加到安全组和通讯组中,但不能为联系人分配权限。组中的联系人可以发送电子邮件。
安全组(Security group)
安全组提供了一种分配网络上资源访问的有效方法,例如你可以指定安全组对文件具备读取等权限。通过使用安全组,可以做如下:
并且与通讯组一样,安全组也可以用作电子邮件实体。向安全组发送电子邮件消息会将该消息发送给安全组中的所有成员。
通讯组(Distribution group)
通讯组只能与电子邮件应用程序(如Exchange)一起使用,以便向用户集合发送电子邮件。通讯组没有启用安全性,这意味着它们不能列在自由访问控制列表(DACL)中。
2:组的作用域
域组根据其作用域也可以进行分类,它标识组在域林中应用的范围,组的范围定义了可以授予组权限的位置。从组的作用域来看,域组分为下面3种:
如图所示,可以看到组根据其作用域可以分为本地域组、全局组和通用组。
下表列出了三种不同组可包含的成员、作用域转换和可以授予的权限等信息,如下:
以下我们只讨论安全组类型下的本地域组、全局组和通用组。
本地域组
域本地组不能嵌套于其他组中,其组成员可以包含本域或域林中其它域的用户、全局组和通用组,也可以包含本域内的本地域组,但无法包含其它域的本地域组,如下表所示:
本地域组主要被用来分配本域的访问权限,以便可以访问该域内的资源。本地域组只能够访问本域内的资源,无法访问其他域的资源。
安全组类型下的本地域组groupType属性值为-2147483643(Builtin容器内)或-2147483644(Users容器内),因此可以利用这个属性来过滤本地域组。使用adfind执行如下命令过滤本地域组。
adfind.exe -f "(|(grouptype=-2147483644)(grouptype=-2147483643))" -dn
如图所示,使用adfind过滤本地域组。
全局组
全局组可以嵌套在其他组中,其组成员只可包含本域的用户和本域的全局组,无法包含本域或域林中其它域的全局组和通用组,也不可包含域林中其它域的用户。也就是说全局组只能在创建它的域中添加用户和组。如下表所示:
全局组可以访问域林中其它域的资源。
安全组类型下的全局组groupType为-2147483646,因此可以利用这个属性来过滤全局组。使用adfind执行如下命令过滤全局组。
adfind.exe -f "(grouptype=-2147483646)" -dn
如图所示,使用adfind过滤全局组。
通用组
通用组可以嵌套在其他组中,其组成员可包括本域和域林中其它域的用户、全局组和通用组,但不能包括本域和域林中其它域的本地域组。如下表所示:
通用组的成员不是保存在各自的域控制器中,而是保存在全局编录服务器(GC)中的,任何变化都会导致全林复制。全局编录服务器通常用于存储一些不经常发生变化的信息。由于用户账号信息是经常变化的,因此建议不要直接将用户账号添加到通用组中,而是先将用户账号添加到全局组中,再将全局组添加到通用组中。通用组可以在域林中所有域内被分配访问权限,以便访问域林中所有域的资源。
安全组类型下的通用组groupType为-2147483640,因此可以利用这个属性来过滤通用组。使用adfind执行如下命令过滤全局组。
adfind.exe -f "(grouptype=-2147483640)" -dn
如图所示,使用adfind过滤通用组。
3:活动目录中内置的组
在创建活动目录时会自动创建一些内置组,可以使用这些内置的组来控制对共享资源的访问,并委派特定域范围的管理角色。内置组会被自动分配一组权限,授权组成员在域中执行特定的操作。活动目录中有许多内置组,它们分别隶属于本地域组、全局组和通用组。需要说明的是,不同的域功能级别,内置的组是有区别的。下面我们来看看有哪些内置的本地域组、全局组和通用组:
内置的本地域组
这些内置的本地域组本身已经被赋予了一些权限,以便让其具备管理活动目录的能力。只要将用户或其他组添加到这些组内,这些用户或组也会自动具备相同的权限。
如图所示,是Windows Server 2012R2域功能级别Builtin容器内常见的本地域组。
以下是这些本地域组的描述:
如图所示,是Windows Server 2012R2域功能级别Users容器中内置的本地域组。
以下是这些本地域组的描述:
下面详细介绍几个比较常见的内置的本地域组。
Account Operators
该组位于Builtin容器内,默认情况下,该内置组没有成员,并且也不属于其他组。它可以创建和管理域中的用户和组,包括它自己的成员身份和Server Operators组的成员身份。但是它不能更改属于Administrators或Domain Admins组的账号,也不能更改这些组。该组是服务管理员,因为它可以修改Server Operators组,进而可以修改域控制器设置。作为最佳做法是将该组的成员留空,并且不要将其用于任何委派管理。无法重命名、删除或移动此组。该组的SID恒为S-1-5-32-548。
如图所示,是Account Operators组的属性。
Administrators
该组位于Builtin容器内,其具有内置的高权限和功能,其成员对系统拥有完全控制权限。该组控制对其域中所有域控制器的访问,并且可以更改所有管理组的成员身份。该组的默认成员为Administrator、Domain Admins和Enterprise Admins,但是该组不属于其他任何组。该组具有域中的任何对象或域控制器上的任何资源的特殊权限。无法重命名、删除或移动此组。该组的SID恒为S-1-5-32-544。
如图所示,是Administrators组的属性。
Backup Operators
该组位于Builtin容器内,其可以备份和恢复计算机上的所有文件,而不管保护这些文件的权限如何。
无法重命名、删除或移动此组。默认情况下,这个内置组没有成员,并且也不属于其他组。它可以在域控制器上执行备份和恢复操作。它的成员资格可以由域中的默认服务管理员组和域管理员以及企业管理组来修改。它不能修改任何管理组的成员资格。虽然此组的成员不能更改服务器设置或修改目录的配置,但他们具有替换域控制器上的文件(包括操作系统文件)所需的权限。因此,此组的成员将被视为服务管理员。该组的SID恒为S-1-5-32-551。
如图所示,是Backup Operators组的属性。
Cert Publishers
该组位于Users容器内,其包括正在运行企业证书颁发机构的所有计算机的组。证书发布者被授权在活动目录中的用户对象发布证书。默认情况下,这个内置组没有成员,并且也不属于其他组。该组的SID为S-1-5--517。
如图所示,是Cert Publishers组的属性。
Print Operators
该组位于Builtin容器内,其仅存在于域控制器上的内置组。默认情况下,唯一的成员是域用户组。打印操作员可以管理打印机和文档队列。无法重命名、删除或移动此组。该组的SID恒为S-1-5-32-550。
如图所示,是Print Operators组的属性。
RAS and IAS Servers
该组位于Users容器内,默认情况下,此组没有成员。正在运行路由和远程访问服务的计算机将自动添加到该组中。此组的成员可以访问用户对象的某些属性,如“读取帐户限制”、“读取登录信息”和“读取远程访问信息”。该组的SID恒为S-1-5--553。
如图所示,是RAS and IAS Servers组的属性。
Server Operators
该组位于Builtin容器内,其仅存在于域控制器上。默认情况下,该组没有成员。该组的用户可以交互式地登录到服务器,创建和删除网络共享,启动和停止服务,备份和恢复文件,格式化计算机的硬盘,并关闭计算机。并且它可以访问域控制器上的服务器配置选项。其成员身份由域中的服务管理员和域管理员以及企业管理员组控制。它不能更改任何管理组的成员资格。这是一个服务管理员帐户,因为它的成员对域控制器有物理访问权,其可以执行维护任务(如备份和恢复),也能够更改安装在域控制器上的二进制文件。无法重命名、删除或移动此组。该组的SID恒为S-1-5-32-549。
如图所示,是Server Operators组的属性。
Users
该组位于Builtin容器内,初始安装操作系统后,唯一的成员是身份验证用户组。当计算机加入域时,域用户组将被添加到计算机上的Users组中。用户可以执行诸如运行应用程序、使用本地打印机和网络打印机、关闭计算机和锁定计算机等任务。如果应用程序的安装程序支持每个用户的安装,那么用户可以安装只允许他们使用的应用程序。无法重命名、删除或移动此组。该组的SID恒为S-1-5-32-545。
如图所示,是Users组的属性。
内置的全局组
活动目录内置的全局组并没有任何的权利与权限,但是可以将其加入到具备权利或权限的域本地组中,或另外直接分配权利或权限给此全局组。这些内置全局组位于Users容器内。
如下图所示,是Windows Server 2012R2域功能级别Users组织单位中内置的全局组。
当计算机加入域时,默认会把域内Domain Users全局安全组添加到本地的Users组内,这也就是为什么默认情况下普通域用户可以登录域内除域控外的其他所有机器。
如图所示,可以看到Domain Users组在本地的Users组中。
下面详细介绍几个比较常见的内置的域全局组。
Domain Admins
该组位于Users容器内,其具有管理该域的权限和功能,其成员对系统拥有完全控制权限。该组的默认成员为Administrator,该组默认属于Administrators组。该组控制对域中所有域控制器的访问,并且可以更改所有管理组的成员身份。默认情况下,域管理员组是已加入域的所有计算机上的管理员组的成员,包括域控制器。域管理员组中的任何成员是域在活动目录中创建的任何对象的默认所有者。如果该组的成员创建了其他对象,如文件,则默认的所有者是管理员组。此组控制对域中所有域控制器的访问,并可以修改域中所有管理帐户的成员资格。它自己的成员身份可以由服务管理员组、域管理员以及企业管理组进行修改。这是一个服务管理员帐户,因为它的成员对域控制器具有完全的访问权限。该组的SID恒为S-1-5--512。
如图所示,是Domain Admins组的属性。
Domain Computers
该组位于Users容器内,其包括已加入域的所有计算机,但不包括域控制器。该组的SID恒为S-1-5--515。
如图所示,是Domain Computers组的属性。
Domain Controllers
该组位于Users容器内,其包括该域中的所有域控制器。新的域控制器将自动添加到此组中。该组的SID恒为S-1-5--516。
如图所示,是Domain Controllers组的属性。
Domain Users
该组位于Users容器内,其包括域中的所有用户帐户。在域中创建用户帐户时,该帐户将自动添加到此组中。该组的SID恒为S-1-5--513。
如图所示,是Domain Users组的属性。
Domain Guests
该组位于Users容器内,其包括域的内置Guest帐户。该组的默认成员为Guest帐户,默认属于Guests组。S-1-5--514。
如图所示,是Domain Guests组的属性。
Group Policy Creators Owners
该组位于Users容器内,其被授权在活动目录中创建新的组策略对象。默认情况下,该组的唯一成员是Administrator。该组的SID恒为S-1-5--520。
如图所示,是Group Policy Creators Owners组的属性。
内置的通用组
如图所示,是域内内置的通用组。
下面详细介绍几个比较常见的内置的通用组。
Enterprise Admins
该组位于Users容器内,其仅存在于域林的根域中。如果域处于原生模式,则它是一个通用组;如果域处于混合模式,则它是一个全局组。该组被授权在活动目录中进行林范围的更改,例如添加子域。默认情况下,该组中的唯一成员是林根域的管理员帐户。此组将自动添加到林中每个域中的管理员组中,从而提供对所有域控制器的配置的完全访问。此组可以修改所有管理组的成员资格。只有根域中的默认服务管理员组才能修改它自己的成员身份。该组的SID恒为S-1-5--519。
如图所示,是Enterprise Admins组的属性。
Schema Admins
该组位于Users容器内,其仅存在于域的活动目录林中的根域中。如果域处于本机模式,则它是一个通用组;如果域处于混合模式,则它是一个全局组。该组被授权在活动目录中进行模式更改。默认情况下,该组中的唯一成员是林根域的管理员帐户。此组具有对该架构的完全管理访问权限。根域中的任何服务管理员组都可以修改此组的成员身份。此帐户被认为是服务管理员,因为它的成员可以修改模式,后者管理整个目录的结构和内容。该组的SID恒为S-1-5--518。
如图所示,是Schema Admins组的属性。
4:域组的管理
那么,在学习域组的过程中,我们该怎么对域组进行管理呢? 比如说创建域组、将用户添加到指定的域组、删除域组和查询域组。需要说明的是,得有相关的权限才能对域组进行管理。
域组的创建
如果想在域内添加域组的话,该如何操作呢?包括但不限于如下方式:
图形化创建
如图所示,打开Active Directory用户和计算机,找到域名,右键——>新建(N)——>组。
然后选择组的类型、作用域,填上组名。如图所示,我选择的组类型是安全组,组的作用域是全局,组名是测试组。然后确定即可。
此时新建的测试组在xie.com根下。如图所示:
也可以在其他节点下面新建组,这样新建的组就会在该节点下。如Builtin节点、Users节点等。
命令行创建
执行如下命令创建类型是安全组,名为ceshi_group的全局组。
net group ceshi_group /add /domain
如图所示,可以看到创建全局组ceshi_group成功!
通过该命令创建的组默认在Users容器中。如下图所示:
添加用户到组中
如果要将用户添加到组中,该如何操作呢?包括但不限于如下方式:
图形化选择用户添加
如图所示,右键组——>属性。
成员——>添加,如图所示:
然后填入用户名称进行检索,检查名称——>确定。如图所示:
应用——>确定即可将用户添加到组。如图所示:
图形化选择组添加
也可以通过将用户添加到组。如图所示,右键用户——>添加到组(G)。
然后输入组名进行检索确定,如图所示:
即可看到将指定用户添加到组成功,如图所示:
命令行添加
执行如下命令将hack用户添加到ceshi_group组中。
net group ceshi_group hack /add /domain
如图所示,将hack用户加入到ceshi_group组中。
域组的删除
如果想删除域组,该如何操作呢?包括但不限于如下方式:
图形化删除
如图所示,打开Active Directory用户和计算机,找到要删除的组,右键——>删除(D)即可。
命令行删除
也可以执行如下命令进行删除。
net group ceshi_group /del /domain
如图所示,删除ceshi_group组成功。
域组的查询
如果想查询域组,该如何操作呢?包括但不限于如下方式:
图形化查询
如图所示,打开Active Directory用户和计算机,找到域名,右键——>查找(I)。
如图所示,在名称这里输入要查询的组名,点击开始查找(I)即可找到对应的组。
命令行查询组内用户
执行如下命令即可查询对应的组中有哪些用户,如下是查询域管理员组domain admins内包含哪些用户。
net group "domain admins" /domain
如图所示,查询domain admins组内的用户。
查询组详细信息
所有的组都是group类的实例,因此我们可以使用objectClass=group来过滤组。或者也可以使用objectCategory=group来过滤组。然后使用name属性来过滤组名即可。
使用adfind执行如下命令查询域管理员组Domain Admins的详细信息。
adfind.exe -f "&(objectClass=group)(name=Domain Admins)"
如图所示,通过adfind查找指定组Domain Admins的详细信息。
参考:
https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/active-directory-security-groups
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc779144(v=ws.10)