码迷,mamicode.com
首页 > 系统相关 > 详细

Powershell查找Unknown Group

时间:2015-02-06 15:12:54      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:powershell   sid history   unknown   

最近迁徙了一些用户从域A转到另外一个域B,为了方便继续访问旧的文件系统,保留了SID历史记录。今天发现个别运行在旧域A的 Citrix Xenapp程序不工作了。


经过检查,发现该程序启动的时候会自动运行 whoami /group自检,如果有无法解析的SID,自动结束。估计是迁徙的时候某些组的SID History出了问题。那么怎么找出这些无法解析的SID和对应的组名呢?豆子写了个很简单的powershell命令来查找


在域A上以用户身份登录,执行下列命令,whoami的结果先转化成csv文本,然后powershell再转化成结构化对象以便操作。


whoami /groups /fo csv | ConvertFrom-Csv | where{$_.type -match "Unknown SID type"} | select sid > K:\unknown.txt


结果如下

技术分享


然后在域B上读取这个文本,进行Sid到组名的解析即可

$group=get-content K:\unknown.txt | select -skip 3
foreach ( $sid in $group)
{
    try{
        
    $objSID = New-Object System.Security.Principal.SecurityIdentifier ($sid.TrimEnd()) 
    $objUser = $objSID.Translate( [System.Security.Principal.NTAccount]) 
    write-host $objUser.Value
    }
    catch{
         write-host "Catched error: $_.Exception.Message"
        }    
}


结果如下。


技术分享

本文出自 “麻婆豆腐” 博客,请务必保留此出处http://beanxyz.blog.51cto.com/5570417/1612267

Powershell查找Unknown Group

标签:powershell   sid history   unknown   

原文地址:http://beanxyz.blog.51cto.com/5570417/1612267

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!