-
Recent Posts
Archives
- May 2012 (26)
- April 2012 (21)
- March 2012 (65)
- February 2012 (94)
- January 2012 (54)
- December 2011 (17)
- November 2011 (11)
- October 2011 (15)
- September 2011 (39)
- August 2011 (57)
- July 2011 (58)
- June 2011 (65)
- May 2011 (53)
- April 2011 (25)
- March 2011 (12)
- February 2011 (18)
- January 2011 (27)
- December 2010 (2)
- November 2010 (14)
- October 2010 (13)
- September 2010 (1)
- June 2010 (11)
- May 2010 (31)
- April 2010 (29)
- March 2010 (19)
- February 2010 (31)
- January 2010 (28)
- December 2009 (11)
- November 2009 (40)
- October 2009 (2)
- September 2009 (8)
- August 2009 (21)
- July 2009 (21)
- June 2009 (27)
- May 2009 (32)
- April 2009 (24)
- March 2009 (41)
- February 2009 (42)
- January 2009 (34)
- December 2008 (30)
- November 2008 (40)
- October 2008 (42)
- September 2008 (52)
- August 2008 (40)
- July 2008 (35)
- June 2008 (38)
- May 2008 (29)
- April 2008 (32)
- March 2008 (59)
- February 2008 (43)
- January 2008 (47)
- December 2007 (30)
- November 2007 (62)
- October 2007 (54)
- September 2007 (43)
- August 2007 (44)
- July 2007 (55)
- June 2007 (57)
- May 2007 (55)
- April 2007 (43)
- March 2007 (61)
- February 2007 (50)
- January 2007 (21)
- December 2006 (7)
- November 2006 (16)
Categories
- .NET
- Active Directory
- Active Directory administration with PowerShell
- Architecture
- BITS
- Books
- COM
- Deep Dive
- DHCP
- DNS
- Events
- Exchange
- File system
- files
- Firewall
- General
- General IT matters
- IT Community
- IT Security
- Learning Powershell
- Math
- Microsoft
- Networking
- Office 2010
- Opinion
- Outlook
- Philosophy
- Powershell
- PowerShell and Active Directory
- PowerShell and Exchange 2007
- PowerShell and IIS
- PowerShell and SQL Server
- PowerShell and WMI
- Powershell Basics
- PowerShell User Group
- PowerShell V2
- PowerShell V3
- PSAM
- Rant
- Science Fiction
- Script of the Week
- Scripting
- SQL Server
- Strings
- Technology
- Uncategorized
- Virtualisation
- Walking
- Windows 7
- Windows 8
- Windows 8 Server
- Windows Server 2008
- Windows Server 2008 R2
- WPF
- WSH
Meta
Twitter
- Preparing for the next UG meeting - PowerShell in Server 2012 - too much to choose from 1 week ago
- Reading about regular expressions in #PowerShell . My head is exploding 1 week ago
- Sat in San Diego airport waiting to fly home after an awesome deep dive 3 weeks ago
- #PowerShell Deep Dive is over. Another awesome event. It's the only place I learn something from every session 3 weeks ago
- #PowerShell v3 jobs give many more options - results available across sessions in many cases 3 weeks ago
Category Archives: Active Directory
Testing replication
We’ve seen a few things we can do with the WMI provider for Active Directory. One of the most useful is testing replication function test-replication{ [CmdletBinding()] param( [string]$computername=$env:COMPUTERNAME ) Get-WmiObject -Namespace root\MicrosoftActiveDirectory -Class MSAD_ReplNeighbor -ComputerName $computername| select SourceDsaCN, NamingContextDN, @{N=”LastSyncAttempt”; … Continue reading
Posted in Active Directory, Powershell, PowerShell and WMI
2 Comments
Test for domain membership
Quick function to determine if a given machine is in a domain or workgroup function test-domain{ [CmdletBinding()] param ( [parameter(Position=0, Mandatory=$true, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)] [string]$computer=”.” ) BEGIN{}#begin PROCESS{ Get-WmiObject -Class Win32_ComputerSystem -ComputerName $computer | select Name, Domain }#process END{}#end } Feed … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Find the Time Server
No its not the latest Internet game. Active Directory synchronises the computer clock times. To know what server is being used function get-timeserver{ [CmdletBinding(SupportsShouldProcess=$true)] param ( [parameter(Position=0, Mandatory=$true, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)] [string]$computer ) BEGIN{ $HKLM = 2147483650 }#begin PROCESS{ $reg = … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Clearing AD logging
Last time we looked at turning on logging – for one or more criteria. The normal state of diagnostic logging is None i.e. the options are set to zero. If we have only a few options set we can use … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Setting AD logging
Now that we know what the options are we can look at switching them on. function set-logsetting{ [CmdletBinding(SupportsShouldProcess=$true)] param ( [parameter(Position=0, Mandatory=$true, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)] [string]$computer, [string]$setting, [ValidateRange(0,5)] [int]$level ) BEGIN{ $HKLM = 2147483650 }#begin PROCESS{ if ($logtype.Values -notcontains $setting){ Throw … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Logging options
With 24 logging options to choose from its difficult to keep track of them. We already have the data in a ash table so lets just display it function get-logsettingoptions{ PROCESS{ 1..$logtype.Count | foreach { $logtype["$_"] } }#process END{}#end <# … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Active Directory Logging
I had a problem come up recently where I needed to check the level of logging applied to the AD database. This is configurable via registry settings. See http://support.microsoft.com/kb/314980 for details. Checking one machine is OK by RDP but when … Continue reading
Posted in Active Directory, PowerShell and WMI
Leave a comment
Setting Security permissions on an AD group
We saw how to create an AD security group here http://msmvps.com/blogs/richardsiddaway/archive/2011/06/28/creating-ad-security-groups.aspx This is how we can give a user full control of that group function set-groupsecurity { [CmdletBinding()] param ( [string]$name ) $dom = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain() $root = $dom.GetDirectoryEntry() $search … Continue reading
Creating AD security groups
Continuing my AD excursion for a while. I saw a forum post about creating AD groups and came up with this function function new-securitygroup { [CmdletBinding()] param ( [string]$name, [string]$ou, [parameter(ParameterSetName="U")] [switch]$universal, [parameter(ParameterSetName="G")] [switch]$global, [parameter(ParameterSetName="DL")] [switch]$domainlocal ) $rootdse = [ADSI]“” … Continue reading
Domain Controllers
I found this part completed post & can’t remember if I ever published it. If I did we’ll put it down to my forgetfulness. The role of Domain Controllers in an Active Directory environment still seems to be causing problems … Continue reading
Posted in Active Directory
Leave a comment