Posts

Showing posts from 2018

Custom private registry key

Image
I've long been a proponent of creating a "custom" registry presence on all PC's and servers to allow the storage of critical information.  Much of what would normally be needed from systems is already accessible via existing keys, but there are always thing specific to each company that are nice to be able to keep track of. I used to just create these manually but for domain wide deployment that's not practical. This PowerShell script will create and/or validate that your custom private registry key exists on all systems specified whether that be a full domain or a list. Many settings are externalized to make the script generic, however the list of key values is not.  You should edit the script to correct the list to suit your needs. An HTML email report is generated to show the results.  The report is coded so that it's short and "relatively" clean. Here is an example of the output email from a small test run: As always the most curren...

AD DNS Valiator

Image
In a small environment AD integrated DNS is one of those things that can slip through the cracks.  As much as we want to keep it accurate and clean as long as DHCP and dynamic addressing does it's thing it usually just runs. To keep old stale records cleaned out DNS scavenging is supposed to deal with old stale records.  It doesn't always do that so I created a script to 1: scan the records and check for a live system, and 2: delete them after two subsequent failures. The delete option is a recent add-on.  Again, an HTML report is emailed to a set of users for review and for a record of what was done. The script is available on the PowerShell Gallery here:   PowerShell Gallery   and called "DNSValidator". Example output:  (the inline report is hard to view but the attachments are much cleaner) Note: Sensitive data blocked out...

Standardized AD computer decommissioner

Image
We seem to have a lack of , shall we say, "process engagement" here where folks don't always do their due diligence with removing computers from the environment.  To address that I created this script to automate and standardize removing systems from AD. The idea here is that the script will be called by SharePoint.  A minimal GUI will be created on SharePoint asking for the target system and the users AD user ID.  When they click OK, or RUN or whatever the button says, it sends the two items as input variables to the script. The script has it's own AD credential to perform the actions.  It verifies that the user is in a group preset from the XML config file.  It then checks for an AD record for the target and if found, deletes the record.  It then checks DNS for a record and again, if found, deletes it. The resultant data set is formatted and sent in an HTML email to the users specified.  Below is an example of the resultant email. The script ...

Automatically load RSAT as a different user

For a while now I've wanted to load the RSAT (Windows Remote Server Administration Tools) tool I use daily via a script at logon, but as my admin user account, not my normal logon.  There are numerous posts on the web about doing that but with the later versions of PowerShell most of those don't work.  Windows 10 doesn't help. I'm sure there are better ways of doing this but after trying the suggestions I found on the web I hit on a combination that works.  The full script and all future updates are on my PowerShell Library site here:  https://www.powershellgallery.com/profiles/Kcmjr I call the script "RSAT-As-Admin.ps1".  It includes a list of RSAT tools that you must adjust to suit your needs.  The way it's written you can add additional executables easily if desired. Here is the code from release v1.00.  Updates will be posted at the link,above. Param (     [ Switch ] $ Console = $false      ...