什么是SID
序
SID是什么意思?好像接触活动目录activedirectory的朋友,很少有人问什么是SID,SID是什么意思?其实活动目录中经常遇到的ghost克隆问题,双系统加入域老是会有一个自动退出域,等等问题都与sid有关。此外还有很多朋友关心如何查看SID,修改SID?《SID是什么》这篇文章就为大家解释一下SID的问题。
SID是什么意思
============
对于那些一看到缩写词脑子就会一片空白的人来说(这里可没有责怪您的意思),SID 只是安全标识符的缩写而已。SID 的全称是“安全标识符(Security Identify)”,是为域或本地计算机中创建的每个帐户分配的唯一 ID 字符串(例如,S-1-5-21-1454471165-1004336348-1606980848-5555)。
提示:active directory活动目录域中每一个对象也有一个唯一标识,成为GUID。GUID=SID + RID 。活动目录中专门有一个操作主机角色叫RID,就是为域中的每个对象分配一个RID号。最终GUID在所有域,乃至全世界都是唯一的。
这里提到的账户包括用户账户和计算机账户。其中计算机账户为了更高级别的安全性要求,会与一些计算机硬件信息相关联。文章开头提到的两个SID的问题,是由于活动目录数据库已经不再信任计算机账户,认为这个计算机账户是不安全的,所谓的安全通道 security channel被破坏。
实际上,计算机使用 SID 来跟踪每个帐户: 如果重命名管理员帐户,计算机仍然知道哪个帐户是管理员帐户。 这是因为 SID 不同于名称,它永远不会更改。
就我们所讨论的问题而言,记住 SID 是操作系统跟踪帐户使用的一种方法就行了。例如,您可以重命名计算机上的 Administrator 帐户,并且仍将该帐户用作管理员,这是因为 Windows 真正关心的并不是名称是什么;Windows 仍然知道该帐户是 Administrator 帐户,因为无论帐户名称如何变化,SID 保持不变。这就像您的社会安全号码一样(假定他人没有盗用您的身份信息),无论您的名字如何变化,它都可唯一地标识您的身份。
在大多数情况下,您不必担心 SID 问题,这对您是有好处的:显然,使用帐户名(如 kenmyer)要比使用 SID(如 S-1-5-21-1454471165-1004336348-1606980848-5555)容易一些。然而,在某些情况下,了解 SID 对应于哪个用户帐户是很有用的。例如,WMI 的安全类依赖于 SID;类似地,Windows 注册表根据 SID 而不是根据名称来跟踪用户配置文件(请查看 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList,就会明白我们的意思了)。也许,您不需要知道用户的 SID ,但是,如果恰巧碰到了呢。
如何查看SID
============
SID的功能听起来还相当不错,除了以下一点: 如果 SID 是唯一的标识符,那么我们如何才能确定哪个 SID 代表管理员帐户? 这是“众所周知”的部分传入的位置。在计算机上,本地管理员的 SID 将始终以 S-1-5- 开始,以 -500 结束。 (这就是管理员 SID 及诸如 Guest 帐户的 SID 之类的其它 SID 被视为众所周知的原因。)
例如,您可能具有一个类似于下列内容的 SID:
S-1-5-21-1559272821-92556266-1055285598-500
正如您所看到的那样,我们的 SID 以 S-1-5- 开始,以 -500 结束。如果我们能够找到符合该模式的 SID,就找到了我们的本地管理员帐户。
那么如何查看sid呢?很简单,如果您想查看当前登陆账户的sid,那么在cmd命令行下输入如下命令:
whoami /logonid 查看当前登录账户的sid
whoami /groups 查看当前用户名、属于的组以及安全标识符(SID) 和当前用户访问令牌的特权。
那如果想知道其他账户的sid呢?也很容易,将如下文字保存为 .vbs后缀的文件,然后执行就可以了。
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")Set objAccount = objWMIService.Get _("Win32_UserAccount.Name='用户名',Domain='电脑名字或者是域名'")
Wscript.Echo objAccount.SID
怎么修改SID
==============
NewSID.exe工具下载地址 http://download.sysinternals.com/Files/NewSid.zip
许多组织使用磁盘映像克隆技术来大规模部署 Windows。此方法要求将完全安装和配置的 Windows 计算机的磁盘复制到其他计算机的磁盘驱动器。其他这些计算机似乎已经有效地完成了相同的安装过程,并且可以立即使用。
虽然此方法节省了数小时的工作量并且比其他部署方法有效,但是它存在一个严重问题,即每个克隆的系统都具有一个完全相同的计算机安全标识符 (SID)。这一因素会损害工作组环境的安全性,并且在具有多个相同计算机 SID 的网络中,还可能损害可移动媒体安全性。
来自 Windows 社区的要求已经促使多家公司开发可以在克隆系统后更改计算机的 SID 的程序。但是,Symantec 的 SID Changer 和 Symantec 的 Ghost Walker 仅作为每家公司的高端产品出售。而且,它们都从 DOS 命令提示窗口中运行(Altiris 的更改器类似于 NewSID)。
NewSID 是我们开发的可更改计算机的 SID 的程序。它是一个免费的 Win32 程序,这意味着它可以容易地在以前克隆的系统上运行。NewSID 可在 Windows NT 4、Windows 2000、Windows XP 和 Windows .NET Server 上运行。
NewSID 是我们开发的可用来更改计算机 SID 的程序。它首先为计算机生成一个随机的 SID,然后更新它在注册表和文件安全描述符中找到的现有计算机 SID 的实例,并用新 SID 替换旧 SID。NewSID 要求使用管理权限运行。它有两个功能:更改 SID 和更改计算机名称。
要使用 NewSID 的自动运行选项,请在命令行中指定“/a”。您还可以通过在“/a”开关后面包含新名称来指示它自动更改计算机的名称。例如:
newsid /a [newname]
将使 NewSID 无提示运行,将计算机名称更改为“newname”,并且在一切正常的情况下重新启动计算机。
注意:如果要运行 NewSID 的系统正在运行 IISAdmin,则必须在运行 NewSID 之前停止 IISAdmin 服务。使用以下命令可停止 IISAdmin 服务:net stop iisadmin /y
NewSID 的 SID 同步功能使您可以指定从另一台计算机获取新 SID 而不是随机生成 SID。使用此功能,可以将备份域控制器 (BDC) 移动到一个新域,因为根据 BDC 与其他域控制器 (DC) 具有相同的计算机 SID,可以确定该 BDC 与某个域的关系。只需选择“Synchronize SID”按钮并输入目标计算机的名称。您必须具有更改目标计算机的注册表项的安全设置的权限,这通常意味着您必须以域管理员身份登录才能使用此功能。
请注意,当您运行 NewSID 时,注册表的大小将会增长,因此请确保注册表最大大小能够适应这一增长。我们已发现这一增长对系统性能没有明显影响。注册表增长的原因是:当 NewSID 应用临时安全设置时,注册表变零碎了。删除这些设置后,注册表不受影响。
常见的SID
===========
• |
SID:S-1-0 名称:Null Authority 说明:标识符颁发机构。 |
• |
SID:S-1-0-0 名称:Nobody 说明:无安全主体。 |
• |
SID:S-1-1 名称:World Authority 说明:标识符颁发机构。 |
• |
SID:S-1-1-0 名称:Everyone 说明:包括所有用户(甚至匿名用户和来宾)的组。成员身份由操作系统控制。 注意:默认情况下,在运行 Windows XP Service Pack 2 (SP2) 的计算机上,Everyone 组不再包括匿名用户。 |
• |
SID:S-1-2 名称:Local Authority 说明:标识符颁发机构。 |
• |
SID:S-1-3 名称:Creator Authority 说明:标识符颁发机构。 |
• |
SID:S-1-3-0 名称:Creator Owner 说明:可继承访问控制项 (ACE) 中的占位符。当 ACE 被继承时,系统用对象创建者的 SID 替换此 SID。 |
• |
SID:S-1-3-1 名称:Creator Group 说明:可继承 ACE 中的占位符。当 ACE 被继承时,系统用对象创建者的主要组的 SID 替换此 SID。主要组仅供 POSIX 子系统使用。 |
• |
SID:S-1-3-2 名称:Creator Owner Server 说明:Windows 2000 中不使用此 SID。 |
• |
SID:S-1-3-3 名称:Creator Group Server 说明:Windows 2000 中不使用此 SID。 |
• |
SID:S-1-4 名称:Non-unique Authority 说明:标识符颁发机构。 |
• |
SID:S-1-5 名称:NT Authority 说明:标识符颁发机构。 |
• |
SID:S-1-5-1 名称:Dialup 说明:一个包括所有通过拨号连接登录的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-2 名称:Network 说明:一个包括所有通过网络连接登录的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-3 名称:Batch 说明:一个包括所有通过批队列功能登录的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-4 名称:Interactive 说明:一个包括所有以交互方式登录的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-5-X-Y 名称:Logon Session 说明:登录会话。这些 SID 的 X 和 Y 值因会话而异。 |
• |
SID:S-1-5-6 名称:Service 说明:一个包括所有作为服务登录的安全主体的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-7 名称:Anonymous 说明:一个包括所有以匿名方式登录的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-8 名称:Proxy 说明:Windows 2000 中不使用此 SID。 |
• |
SID:S-1-5-9 名称:Enterprise Domain Controllers 说明:一个由使用 Active Directory 目录服务的林中的所有域控制器组成的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-10 名称:Principal Self 说明:Active Directory 中的帐户对象或组对象上可继承 ACE 中的一个占位符。当 ACE 被继承时,系统用持有此帐户的安全主体的 SID 替换此 SID。 |
• |
SID:S-1-5-11 名称:Authenticated Users 说明:一个包括所有登录时已经过身份验证的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-12 名称:Restricted Code 说明:此 SID 保留供以后使用。 |
• |
SID:S-1-5-13 名称:Terminal Server Users 说明:一个包括所有登录到终端服务服务器的用户的组。成员身份由操作系统控制。 |
• |
SID:S-1-5-18 名称:Local System 说明:操作系统使用的服务帐户。 |
• |
SID:S-1-5-19 名称:NT Authority 说明:本地服务 |
• |
SID:S-1-5-20 名称:NT Authority 说明:网络服务 |
• |
SID:S-1-5-domain-500 名称:Administrator 说明:系统管理员的用户帐户。默认情况下,它是唯一能够完全控制系统的用户帐户。 |
• |
SID:S-1-5-domain-501 名称:Guest 说明:无个人帐户的人员的用户帐户。此用户帐户不需要密码。默认情况下,Guest 帐户被禁用。 |
• |
SID:S-1-5-domain-502 名称:KRBTGT 说明:密钥分发中心 (KDC) 服务使用的服务帐户。 |
• |
SID:S-1-5-domain-512 名称:Domain Admins 说明:一个全局组,其成员被授权管理该域。默认情况下,Domain Admins 组属于所有加入域的计算机(包括域控制器)上的 Administrators 组。Domain Admins 是该组的任何成员创建的任何对象的默认所有者。 |
• |
SID:S-1-5-domain-513 名称:Domain Users 说明:一个全局组,默认情况下它包括域中的所有用户帐户。在域中创建用户帐户时,默认情况下,帐户将添加到该组中。 |
• |
SID:S-1-5-domain-514 名称:Domain Guests 说明:一个全局组,默认情况下它只有一个成员,即域的内置 Guest 帐户。 |
• |
SID:S-1-5-domain-515 名称:Domain Computers 说明:一个包括加入域的所有客户端和服务器的全局组。 |
• |
SID:S-1-5-domain-516 名称:Domain Controllers 说明:一个包括域中所有域控制器的全局组。默认情况下,新的域控制器将添加到该组中。 |
• |
SID:S-1-5-domain-517 名称:Cert Publishers 说明:一个包括所有运行企业证书颁发机构的计算机的全局组。Cert Publishers 被授权为 Active Directory 中的 User 对象发布证书。 |
• |
SID:S-1-5-root domain-518 名称:Schema Admins 说明:纯模式域中的通用组;混合模式域中的全局组。该组被授权在 Active Directory 中更改架构。默认情况下,该组的唯一成员是林根域的 Administrator 帐户。 |
• |
SID:S-1-5-root domain-519 名称:Enterprise Admins 说明:纯模式域中的通用组;混合模式域中的全局组。该组被授权在 Active Directory 中进行目录林范围的更改,例如添加子域。默认情况下,该组的唯一成员是林根域的 Administrator 帐户。 |
• |
SID:S-1-5-domain-520 名称:Group Policy Creator Owners 说明:一个被授权在 Active Directory 中新建组策略对象的全局组。默认情况下,该组的唯一成员是 Administrator。 |
• |
SID:S-1-5-domain-533 名称:RAS and IAS Servers 说明:域本地组。默认情况下,该组没有成员。该组中的服务器对 Active Directory 域本地组中的 User 对象具有“读取帐户限制”和“读取登录信息”访问权限。默认情况下,该组没有成员。该组中的服务器对 Active Directory 中的 User 对象具有“读取帐户限制”和“读取登录信息”访问权限。 |
• |
SID:S-1-5-32-544 名称:Administrators 说明:内置组。初次安装操作系统后,该组的唯一成员是 Administrator 帐户。当计算机加入域时,Domain Admins 组将被添加到 Administrators 组中。当服务器成为域控制器时,Enterprise Admins 组也被添加到 Administrators 组中。 |
• |
SID:S-1-5-32-545 名称:Users 说明:内置组。初次安装操作系统后,该组的唯一成员是 Authenticated Users 组。当计算机加入域时,Domain Users 组将被添加到计算机上的 Users 组中。 |
• |
SID:S-1-5-32-546 名称:Guests 说明:内置组。默认情况下,该组的唯一成员是 Guest 帐户。Guests 组允许临时或一次性用户使用有限权限登录到计算机的内置 Guest 帐户。 |
• |
SID:S-1-5-32-547 名称:Power Users 说明:内置组。默认情况下,该组没有成员。Power Users 可以创建本地用户和组,修改和删除以前创建的帐户,删除 Power Users、Users 和 Guests 组中的用户。Power Users 还可以安装程序,创建、管理和删除本地打印机以及创建和删除文件共享。 |
• |
SID:S-1-5-32-548 名称:Account Operators 说明:一种只存在于域控制器上的内置组。默认情况下,该组没有成员。默认情况下,Account Operators 有权为 Active Directory 的所有容器和组织单位中的用户、组和计算机创建、修改和删除帐户,Builtin 容器和 Domain Controllers OU 除外。Account Operators 无权修改 Administrators 和 Domain Admins 组,也无权为那些组的成员修改帐户。 |
• |
SID:S-1-5-32-549 名称:Server Operators 说明:一种只存在于域控制器上的内置组。默认情况下,该组没有成员。Server Operators 可以以交互方式登录到服务器,创建和删除网络共享,启动和停止服务,备份和还原文件,格式化计算机的硬盘以及关闭计算机。 |
• |
SID:S-1-5-32-550 名称:Print Operators 说明:一种只存在于域控制器上的内置组。默认情况下,该组的唯一成员是 Domain Users 组。Print Operators 可以管理打印机和文档队列。 |
• |
SID:S-1-5-32-551 名称:Backup Operators 说明:内置组。默认情况下,该组没有成员。Backup Operators 可以备份和还原计算机上的所有文件,无论那些文件受哪些权限保护均如此。Backup Operators 也可以登录和关闭计算机。 |
• |
SID:S-1-5-32-552 名称:Replicators 说明:一个由域控制器上的文件复制服务使用的内置组。默认情况下,该组没有成员。不要向该组中添加用户。 |
下列各组在某台 Windows Server 2003 域控制器被指定担任主域控制器 (PDC) 操作主机角色之前,将一直显示为 SID。(“操作主机”也称作灵活的单主机操作或 FSMO。)在将 Windows Server 2003 域控制器添加到域中时,新建的其他内置组有:
• |
SID:S-1-5-32-554 名称:BUILTIN\Pre-Windows 2000 Compatible Access 说明:Windows 2000 添加的别名。一个允许对域中的所有用户和组进行读访问的向后兼容组。 |
• |
SID:S-1-5-32-555 名称:BUILTIN\Remote Desktop Users 说明:一个别名。该组的成员被授予远程登录权限。 |
• |
SID:S-1-5-32-556 名称:BUILTIN\Network Configuration Operators 说明:一个别名。该组的成员拥有管理网络功能配置的部分权限。 |
• |
SID:S-1-5-32-557 名称:BUILTIN\Incoming Forest Trust Builders 说明:一个别名。该组的成员可以创建到该林的传入的单向信任。 |
• |
SID:S-1-5-32-557 名称:BUILTIN\Incoming Forest Trust Builders 说明:一个别名。该组的成员可以创建到该林的传入的单向信任。 |
• |
SID:S-1-5-32-558 名称:BUILTIN\Performance Monitor Users 说明:一个别名。该组的成员可以进行远程访问以监视此计算机。 |
• |
SID:S-1-5-32-559 名称:BUILTIN\Performance Log Users 说明:一个别名。该组的成员可以进行远程访问,以便预定此计算机上性能计数器的日志。 |
• |
SID:S-1-5-32-560 名称:BUILTIN\Windows Authorization Access Group 说明:一个别名。该组的成员可以访问 User 对象上的计算的 tokenGroupsGlobalAndUniversal 属性。 |
• |
SID:S-1-5-32-561 名称:BUILTIN\Terminal Server License Servers 说明:一个别名。终端服务器许可证服务器组。 |