需求原因:AD中所有计算机命名规则:公司+PC序列号,操作系统为Windows 7 Professional版本。当我使用Powershell将AD中所有计算机信息导出,并排序检查时,发现有部分机器命名不符合规则,且操作系统为Win7旗舰版或Win10系统。对于这些机器的操作系统公司并未购买许可,会存在法律风险。作为IT人员,应当及时处理这些不合规的机器。所以,我们需要及时找到机器的使用者,并培养用户软件正版化的思维。
创新互联2013年至今,是专业互联网技术服务公司,拥有项目做网站、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元和顺做网站,已为上家服务,为和顺各地企业和个人服务,联系电话:028-86922220
解决方案:让AD中所有计算机显示出当前用户登录信息,及时沟通处理不合规机器。使用组策略部署脚本将用户登录信息写入对应的计算机描述中或用户登录名称中
一、登录DC,打开AD用户和计算机管理中心,右键“Computers组织单位(OU)”选择”属性”
二、选择“安全”,“Authenticated Users”点击“高级”
三、选择“Authenticated Users”点击“编辑”
四、选择“应用于后代计算机对象”给予“写入描述权限”,点击确定(注意:对于权限给予一定要仔细审核!!!)
五、打开“组策略管理”,可在默认组策略或OU下新建策略都可以,此处已默认策略为例
六、右键“Default Domain Policy”点击“编辑”
七、选择“用户配置”,“Windows设置”"脚本(登录/注销)"
八、双击“登录”点击“添加”,点击“浏览”
九、放入VBS脚本,点击“打开”,点击“确定”
十、点击“应用”“确定”,关闭组策略管理,结束
十一、可以使用gpupdate /force 强制刷新组策略,测试结果成功
附件脚本如下,改为VBS后缀即可正常使用
On Error Resume Next
Set objSysInfo = CreateObject("ADSystemInfo")
Set objComputer = GetObject("LDAP://" & objSysInfo.ComputerName)
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
strCompDesc =objUser.CN
if strCompDesc <> "" then
objComputer.Description = strCompDesc & "|" & date & " " & time
objComputer.SetInfo
end if
Set objUser = Nothing
Set objComputer = Nothing
Set objSysInfo = Nothing
十二、如果需要写入“用户登录名称”需要更改脚本“Description“”和重新给予OU“后代计算机对象“”写入“UserPrincipalName”的权限,此处不做详细解释
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款