PowerShell: User Principal Name Corresponding to the USN's Colleague ID

Tags PowerShell

Instructions

  1. Open a PowerShell window. 
  2. Paste the code in the window 
  3. Hit enter 
  4. Enter the user’s Colleague ID when prompted. 

Note: A regular user account can run this script. 

 

Input: user Colleague ID  

Output: user principle name 

 

User principle name = AD attribute mail as in user.name@tccd.edu

Colleague ID = AD attribute extensionAttribute15, format can vary

 

Variables 

$ColleagueID 

Code:

################################################################

$ColleagueID = Read-Host "Enter ColleagueID" 

$ColleagueID 

$strFilter = "(&(objectCategory=User)(extensionAttribute15=$ColleagueID))"  

  $objDomain = New-Object System.DirectoryServices.DirectoryEntry  

  $objSearcher = New-Object System.DirectoryServices.DirectorySearcher  

$objSearcher.SearchRoot = $objDomain  

$objSearcher.PageSize = 1000  

$objSearcher.Filter = $strFilter  

$colProplist = "mail"  

 

foreach ($i in $colPropList){$objSearcher.PropertiesToLoad.Add($i)}  

  $colResults = $objSearcher.FindAll()  

  foreach ($objResult in $colResults)  

    {$objItem = $objResult.Properties; $objItem.mail}  

##############################################################################

Example run: 

Enter colleagueID: dit##### 

Dit##### 

User.Name@tccd.edu 

Details

Article ID: 177
Created
Thu 3/24/22 3:11 PM
Modified
Thu 4/18/24 10:23 AM