`
wangleide414
  • 浏览: 592114 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

windows操作系统中SID是什么??

 
阅读更多

SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码。在第一次创建该帐户时,将给网络上的每一个帐户发布一个唯一的 SID。Windows 2000 中的内部进程将引用帐户的 SID 而不是帐户的用户或组名。如果创建帐户,再删除帐户,然后使用相同的用户名创建另一个帐户,则新帐户将不具有授权给前一个帐户的权力或权限,原因是该帐户具有不同的 SID 号。安全标识符也被称为安全 ID 或 SID。 

SID的作用 
用户通过验证后,登陆进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给 Windows NT,然后 Windows NT 检查用户试图访问对象上的访问控制列表。如果用户被允许访问该对象,Windows NT将会分配给用户适当的访问权限。 
访问令牌是用户在通过验证的时候有登陆进程所提供的,所以改变用户的权限需要注销后重新登陆,重新获取访问令牌。 

SID号码的组成 
如果存在两个同样SID的用户,这两个帐户将被鉴别为同一个帐户,原理上如果帐户无限制增加的时候,会产生同样的SID,在通常的情况下SID是唯一的,他由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性。 

一个完整的SID包括: 
• 用户和组的安全描述 
• 48-bit的ID authority 
• 修订版本 
• 可变的验证值Variable sub-authority values 
例:S-1-5-21-310440588-250036847-580389505-500 
我们来先分析这个重要的SID。第一项S表示该字符串是SID;第二项是SID的版本号,对于2000来说,这个就是1;然后是标志符的颁发机构(identifier authority),对于2000内的帐户,颁发机构就是NT,值是5。然后表示一系列的子颁发机构,前面几项是标志域的,最后一个标志着域内的帐户和组。 

SID的获得 
开始-运行-regedt32-HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Builtin\Aliases\Members,找到本地的域的代码,展开后,得到的就是本地帐号的所有SID列表。 
其中很多值都是固定的,比如第一个000001F4(16进制),换算成十进制是500,说明是系统建立的内置管理员帐号administrator,000001F5换算成10进制是501,也就是GUEST帐号了,详细的参照后面的列表。 
这一项默认是system可以完全控制,这也就是为什么要获得这个需要一个System的Cmd的Shell的原因了,当然如果权限足够的话你可以把你要添加的帐号添加进去。 
或者使用Support Tools的Reg工具: 
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList 

还有一种方法可以获得SID和用户名称的对应关系: 
1. Regedt32: 
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion \ProfileList 
2. 这个时候可以在左侧的窗口看到SID的值,可以在右侧的窗口中ProfileImagePath看到不同的SID关联的用户名, 
比如%SystemDrive%\Documents and Settings\Administrator.momo这个对应的就是本地机器的管理员SID 
%SystemDrive%\Documents and Settings\Administrator.domain这个就是对应域的管理员的帐户 

另外微软的ResourceKit里面也提供了工具getsid,sysinternals的工具包里面也有Psgetsid,其实感觉原理都是读取注册表的值罢了,就是省了一些事情。 

SID重复问题的产生 
安装NT/2000系统的时候,产生了一个唯一的SID,但是当你使用类似Ghost的软件克隆机器的时候,就会产生不同的机器使用一个SID的问题。产生了很严重的安全问题。 
同样,如果是重复的SID对于对等网来说也会产生很多安全方面的问题。在对等网中帐号的基础是SID加上一个相关的标识符(RID),如果所有的工作站都拥有一样的SID,每个工作站上产生的第一个帐号都是一样的,这样就对用户本身的文件夹和文件的安全产生了隐患。 
这个时候某个人在自己的NTFS分区建立了共享,并且设置了自己可以访问,但是实际上另外一台机器的SID号码和这个一样的用户此时也是可以访问这个共享的。 

SID重复问题的解决 
下面的几个试验带有高危险性,慎用,我已经付出了惨痛的代价! 
微软在ResourceKit里面提供了一个工具,叫做SYSPREP,这个可以用在克隆一台工作站以前产生一个新的SID号码。 下图是他的参数 

这个工具在DC上是不能运行这个命令的,否则会提示 

但是这个工具并不是把所有的帐户完全的产生新的SID,而是针对两个主要的帐户Administrator和Guest,其他的帐号仍然使用原有的SID。 

下面做一个试验,先获得目前帐号的SID: 
S-1-5-21-2000478354-688789844-839522115 
然后运行Sysprep,出现提示窗口: 

确定以后需要重启,然后安装程序需要重新设置计算机名称、管理员口令等,但是登陆的时候还是需要输入原帐号的口令。 
进入2000以后,再次查询SID,得到: 
S-1-5-21-759461550-145307086-515799519,发现SID号已经得到了改变,查询注册表,发现注册表已经全部修改了,当然全部修改了?。 

另外sysinternals公司也提供了类似的工具NTSID,这个到后来才发现是针对NT4的产品,界面如下: 

他可不会提示什么再DC上不能用,接受了就开始,结果导致我的一台DC崩溃,重启后提示“安全账号管理器初始化失败,提供给识别代号颁发机构的值为无效值,错误状态0XC0000084,请按确定,重启到目录服务还原模式...”,即使切换到目录服务还原模式也再也进不去了! 
想想自己胆子也够大的啊,好在是一台额外DC,但是自己用的机器,导致重装系统半天,重装软件N天?,所以再次提醒大家,做以上试验的时候一定要慎重,最好在一台无关紧要的机器上试验,否则出现问题我不负责哦?。另外在Ghost的新版企业版本中的控制台已经加入了修改SID的功能,自己还没有尝试,有兴趣的朋友可以自己试验一下,不过从原理上应该都是一样的。 
文章发表之前,又发现了微软自己提供的一个工具“Riprep”,这个工具主要用做在远程安装的过程中,想要同时安装上应用程序。管理员安装了一个标准的公司桌面操作系统,并配置好应用软件和一些桌面设置之后,可以使用Riprep从这个标准的公司桌面系统制作一个Image文件。这个Image文件既包括了客户化的应用软件,又把每个桌面系统必须独占的安全ID、计算机账号等删除了。管理员可以它放到远程安装服务器上,供客户端远程启动进行安装时选用。但是要注意的是这个工具只能在单硬盘、单分区而且是Professional的机器上面用。

巧妙解决服务器重装之后的麻烦

Windows 2003系统的服务器,因意外因素不小心瘫痪后而重新安装了操作系统与活动目录,并将以前的用户帐号一一重新创建之后,发现以前的用户都不能访问服务器中的相关系统资源了,这是为什么呢?

  其实,在Windows 2003服务器系统中,访问权限的大小和每一个用户的SID标识是一一对应的,也就是说任何一个用户的SID标识都是唯一的,因此当我们重新安装了服务器操作系统后,即使我们再将以前的用户帐号逐一地创建好,不过这些用户的SID标识符号已经发生变化了,而服务器是根据用户的SID标识不同来确定访问权限大小的,所以在重新安装了服务器操作系统后,以前的用户SID全部丢失了,当这些用户再次访问以前的系统资源时,服务器当然会拒绝它们的访问。为了解决重装服务器之后的权限丢失麻烦,我们不妨按照下面的操作步骤来恢复以前的用户权限:

  首先找到用户需要访问的目标共享文件夹,然后用鼠标右键单击之,并从弹出的右键菜单中执行“属性”命令,打开共享文件夹的属性设置窗口,单击该窗口中的“安全”标签,进入到如图1所示的标签页面;

经验分享巧妙解决服务器重装之后的麻烦
图1

  其次单击该标签页面中的“高级”按钮,打开如图2所示的高级安全设置对话框,单击该对话框中的“所有者”标签,并在其后弹出的标签页面中,选中目标用户所对应的帐号名称,同时将“替换子容器及对象的所有者”复选项选中,然后依次单击“应用”按钮、“确定”按钮,通过上面的操作,我们就能将共享资源的访问权限所有者全部更换给了新的目标用户,这样的话该新增用户自然就能访问到他以前能访问的服务器相关资源了。

经验分享巧妙解决服务器重装之后的麻烦
图2

  应对重装之后的无法访问麻烦

 

  在安装有Windows 2000操作系统的服务器中,我们常常会发现服务器系统重新安装过之后,局域网中的客户端就无法连接到服务器系统中,而且在连接的时候服务器还会要求客户端输入登录帐号与密码。也许有人会纳闷,为什么在服务器重新安装之前,我们能从客户端正常访问服务器中的资源,而重新安装过服务器之后,怎么就不能正常访问服务器了呢?

  其实,之前我们之所以能够顺利访问服务器,是因为我们已经将服务器禁止使用的Guest帐号启用起来了,而Guest帐号恰恰就是客户端连接服务器时所自动使用的缺省帐号,因此客户端凭借已经起用的Guest帐号当然就能访问到服务器中的资源了;但重新安装了服务器系统后,Guest帐号又会被Windows 2000操作系统自动禁用掉了,因此当我们再次尝试从客户端来访问服务器时,当然就会发生无法访问的故障,同时还会弹出提示窗口要求我们重新输入可用的合法帐号。

  为了消除重装服务器之后的无法访问故障,我们必须用手工方法将服务器系统默认禁用的Guest帐号重新激活。在激活Guest帐号时,必须先以超级管理员帐号登录进服务器系统,之后依次单击服务器系统桌面中的“开始”/“运行”命令,在其后弹出的系统运行对话框中,输入字符串命令“compmgmt.msc”,单击“确定”按钮后,打开系统的计算机管理窗口;

  在该窗口的左侧列表区域,依次展开其中的“系统工具”、“本地用户和组”、“用户”项目,在对应“用户”项目的右侧显示区域中,双击“guest”选项,打开如图3所示的guest帐号属性设置窗口;将该窗口中的“帐户已停用”的选中状态取消,再单击“确定”按钮,这样的话我们就能将服务器默认的帐号重新启用起来了。日后,当我们再次尝试从客户端中登录服务器时,就能确保登录操作成功了。

经验分享巧妙解决服务器重装之后的麻烦
图3

 

分享到:
评论

相关推荐

    SID 查看for windows系统共

    可以很方便的查看到你的windows操作系统的SID。

    操作系统安全:Windows系统的安全架构.pptx

    Windows系统的安全架构;Windows安全架构;Windows系统的安全组件;?针对运行对象所有者可以控制谁被允许访问该对象以及访问方式。;要求所有的用户必须登陆,通过认证后才可以访问资源;5、对象的访问控制;Windows安全子...

    windows用户组SID对应关系.xlsx

    windows Server2008 R2操作系统内置用户组和内置安全主体的默认SID的对应关系

    操作系统重装后oracle数据库的恢复

    ******此处的操作需要对windows操作系统注册表非常熟悉,对于linux平台,恢复操作类似,只不过需要对环境变量的操作熟悉。 3、监听程序的恢复 a、配置参数的恢复,oracle_home\network\admin\listener.ora,检查...

    WindowsServer2016系统管理视频教程csdn.txt

    1-4使用服务器操作系统09:43 1-5根据用户的习惯更改系统设置07:42 1-6Windows常用命令11:24 1-7管理硬件驱动09:37 第2章管理Windows用户和组1小时48分钟9节 2-1管理Windows用户04:50 2-2管理Windows组09:34 2-3用户...

    Windows Server 2012 系统管理视频课程csdn.txt

    10-4操作系统启动过程15:28 10-5基本磁盘管理11:42 10-6管理盘符和路径08:46 10-7介绍简单卷和条带卷08:31 10-8介绍镜像卷和RAID-510:30 10-9创建简单卷和条带卷07:19 10-10创建RAID-5和镜像卷06:45 10-11修复失败的...

    Windows7操作系统NTFS的权限分析与实际应用NT6

    用户与组都使用SID作为其唯一标识符。比起活动目录域中域本地组、全局组、通用组及其嵌套、转换所带来的多彩缤纷的应用相比,单机环境下的用户与组要简单得多。这里主要介绍一些具备特殊功能定位的用户与组。

    NewSid windows系统产生新的安全ID

    由于windows系统产生新的安全ID,在企业部署ghost操作系统后,需重新生成新的sid,否则集中管理可能会发生很多异常故障。

    Windows Server 2008系统管理视频教程csdn.txt

    1-8操作系统05:50 1-9使用虚拟机克系统09:55 1-10为克隆的系统产生新的SID13:35 1-11克隆系统和版权问题09:31 1-12挂在虚拟机硬盘文件到物理机05:35 1-13虚拟机的网络10:05 1-14将虚拟机网卡指定到特定网络10:04 1-...

    计算机病毒与防护:Windows基本操作.pptx

    系统中的一种对象(用户、组、计算机) 包含多种属性,如用户名、密码等 不同用户帐户的用户名和密码等一般不同,不同用户帐户的配置环境不同 不同用户帐户的SID不同:whoami /echo %username%/query user 用户管理 ...

    WindowsServer网络安全讲义(PPT-48页).pptx

    5.1.1 Windows Server 2003简介 Windows Server 2003主要优点有: 可靠:Windows Server 2003是迄今为止提供的最快、最可靠和最安全的Windows服务器操作系统。 高效:Windows Server 2003提供各种工具,允许用户...

    ORACLE10G 审计操作

    1、什么是审计 审计(Audit)用于监视用户所执行...W0OS:将audit trail 记录在操作系统文件中,文件名由audit_file_dest参数指定; T0XML:10g里新增的。 注:这两个参数是static参数,需要重新启动数据库才能生效。

    sysinternals 工具集合 (20090226版)

     DiskView 该软件集成于微软的Windows操作系统的资源管理器以显示一个直观的磁盘空间使用情况。该软件的Visualizer面板在一个图形图表中提供关于当前文件夹的详细使用情况信息。文件和文件夹空间占用情况以及在...

    win-soem-win10及win11系统QT-SOEM1个电机转圈圈-周期同步速度模式(CSV模式)-添加代码注释-CSDN

    硬件环境: windows10及windows11系统利用QT平台搭建EtherCAT主站(SOEM)。 EtherCAT主站-SOEM专栏的源代码。 EtherCAT主站SOEM -- 37 -- win-soem-win10及win11系统QT-SOEM-EtherCAT主站1个电机转圈圈-周期同步...

    广西第二届职业技能大赛网络系统管理-windows部分讲解视频

    此视频从刷SID开始,其中有讲解到自己在比赛的时候做题顺序,做题思路,此视频录制时麦克风不是很好所以听起来有点小声,请观看的家人们自行调大音量,仅供学习探讨,不做商业用途,其中如有错误点可以和我反馈,...

    计算机C++复习资料及封装技术教程(精华版)

    简单来说,封装就是将源计算机中的系统封装为系统映象,然后通过第三方介质(例如光盘、U盘等移动存储介质)的传送到达目标计算机,目标计算机启动时,封装好的系统映象开始部署过程最终成为操作系统。 流程如下图...

    Piumalinux:GNU / Linux操作系统最终基于Debian Sid。 它运行不同的DE。-开源

    更新如果您下载正在测试的最新版本的ISO(Piumalinux2015),请记住凭据:登录名:piumalinux密码:piumalinux信息Piumalinux(意大利语中的“ Piuma”意为羽毛)是一种新的轻巧的GNU / Linux风格,基于Debian Sid。...

    Skills Assessment - Windows Fundamentals WriteUp.mp4

    4.共享文件夹权限设置:添加HR安全组到Company Data共享文件夹和文件夹的NTFS文件系统权限中 *删除默认组 *设置share permissions允许change和read权限 *禁用文件继承 *设置NTFS权限允许Modify, Read & Execute,...

    pst 3.1.6中文版.rar

    软件介绍: pst 3.1.6简体中文版放号工具,功能类型可选择:通用放号模式、批量放号模式。择中兴通讯股份有限公司的终端...本使用说明中的操作举例都是在Windows XP 操作系统下,其他操作系统下的操作与此类似。

Global site tag (gtag.js) - Google Analytics