This month’s Mr. Roboto column offers a script you can use with PowerShell to build a domain password report. There were few issues that came up which have since been resolved. You can download the latest version, currently 1.2 at www.jdhitsolutions.com/scripts in the Mr. Roboto section.
I’ve blogged in the past about Wayne Martin and his outstanding list of command line tips. These are one line commands, some complex some simple, that you can use to accomplish a wide range of task. The overall number of tips is to 425 and Wayne recently reorganized them into 7 categories to make it easier for people to digest. There’s very little scripting with any of these commands. Most use native or freely available command line tools. But because they are executed from a command line you could incorporate them into a script. I encourage you to check them out.
The single list:
The same commands split into categories:
Yes, its finally true. You can finally get your hands on Managing Active Directory with Windows PowerShell: TFM. The book is being printed so you can get your copy today. You can order it today at ScriptingOutpost.com in both print and ebook format. Or if you prefer the best of both worlds get both as a bundle.
Table of Contents
- PowerShell Crash Course
- PowerShell Extras
- Managing Local Computer Accounts
- Managing Local Groups
- Managing Active Directory with PowerShell Fundamentals
- Managing Active Directory Users
- Active Directory Password Management
- Managing Active Directory Contacts
- Managing Active Directory Groups
- Managing Active Directory Computer Accounts
- Managing Organizational Units and Containers
- Managing Group Policy
- Active Directory Security and Permissions
- Managing Active Directory with WMI and PowerShell
- Using the Active Directory PSDrive Provider
- Managing Active Directory Infrastructure
- (Appendix A) Managing Active Directory with PowerGUI
You don’t have to wait for Microsoft before you can begin managing Active Directory with PowerShell. You can start today.
I’m trying out a new Live Write plugin for Amazon. Here is a list of books I have currently authored or co-authored. This list will continue to grow as I’m working on a new book now about managing Active Directory with PowerShell.
|WSH and VBScript Core: TFM
by Jeffery Hicks
|Windows PowerShell v1.0: TFM, 2nd Edition
by Don Jones, Jeffery Hicks
|Advanced VBScript for Microsoft Windows Administrators (Pro Other)
by Don Jones, Jeffery Hicks
I hope you’ll check them out.
|Share this post :|
A few of my recent Mr. Roboto columns have been about group auditing. I first published an HTA that would report on group membership last December. Astute reader Matt V. found a bug with the way nested group memberships were being reported. Or in this case, not being reported. It turns out that if a group was a member of one other group, that membership was not reported. But if the group was nested in 2 or more groups then you’d see all the nested groups. After a little debugging I found my goof. I used ADSI to get a reference to the specified group:
<span class="kwrd">Set</span> objGroup=GetObject(<span class="str">"LDAP://"</span> & strDN)
strDN would have a value like CN=Sales,OU=Groups,DC=Mycompany,DC=local. My mistake was in assuming that the MemberOf property would always be a collection so I was using a ForEach construct. But it is only a collection if there is more than one group. So I modified the code:
<span class="kwrd">If</span> IsArray(objGroup.MemberOf) <span class="kwrd">Then</span><br /> Trace <span class="str">"MemberOf is a collection"</span><br /> <span class="kwrd">For</span> <span class="kwrd">Each</span> member <span class="kwrd">In</span> objGroup.MemberOf<br /> Trace <span class="str">"found member of "</span> & member<br /> strMemberOf=strMemberof & <span class="str">" "</span> & member & VbCrLf<br /> <span class="kwrd">Next</span><br /><span class="kwrd">Else</span><br /> Trace <span class="str">"found member of "</span> & objGroup.MemberOf<br /> strMemberOf=strMemberof & <span class="str">" "</span> & objGroup.MemberOf & vbcrlf<br /><span class="kwrd">End</span> If
Because I used the same code in a followup article where I released a command line version of the tool, I had to modify that tool as well. The above code snippet is actually from the WSF version.
Anyway, both versions have now been updated and are available for download from the Mr. Roboto section of my script library. Thank you Matt for keeping me on my toes.