I’ve realized that a common scenario for password generation is when a user calls the service desk asking for a new password.

In those scenarios the password is usually verbally spelled to the user which might cause confusion and misunderstandings. For that reason I wrote a simple function that will spell out a password phonetically using the NATO phonetic alphabet.

Read more details on my blog: http://blog.simonw.se/generating-passwords-for-active-directoryrevisited/


If you also need to generate a password, I have a function for that posted here:
https://gallery.technet.microsoft.com/Generate-a-random-and-5c879ed5

 

PowerShell
Edit|Remove
function Get-Phonetic { 
    <# 
    .Synopsis 
       Generates a table with phonetic spelling from a collection of characters 
    .DESCRIPTION 
       Generates a table with phonetic spelling from a collection of characters 
    .EXAMPLE 
       "gjIgsj" | Get-Phonetic 
 
       Input text: gjIgsj 
 
       Char Phonetic 
       ---- -------- 
          g golf     
          j juliett  
          I INDIA    
          g golf     
          s sierra   
          j juliett  
        
    .OUTPUTS 
       [String] 
    .NOTES 
       Written by Simon Wåhlin, blog.simonw.se 
       I take no responsibility for any issues caused by this script. 
    #> 
    Param ( 
        # List of characters to translate to phonetic alphabet 
        [Parameter(Mandatory=$true,ValueFromPipeLine=$true)] 
        [Char[]]$Char, 
        # Hashtable containing a char as key and phonetic word as value 
        [HashTable]$PhoneticTable = @{ 
            'a' = 'alfa'    ;'b' = 'bravo'   ;'c' = 'charlie';'d' = 'delta'; 
            'e' = 'echo'    ;'f' = 'foxtrot' ;'g' = 'golf'   ;'h' = 'hotel'; 
            'i' = 'india'   ;'j' = 'juliett' ;'k' = 'kilo'   ;'l' = 'lima' ; 
            'm' = 'mike'    ;'n' = 'november';'o' = 'oscar'  ;'p' = 'papa' ; 
            'q' = 'quebec'  ;'r' = 'romeo'   ;'s' = 'sierra' ;'t' = 'tango'; 
            'u' = 'uniform' ;'v' = 'victor'  ;'w' = 'whiskey';'x' = 'x-ray'; 
            'y' = 'yankee'  ;'z' = 'zulu'    ;'0' = 'Zero'   ;'1' = 'One'  ; 
            '2' = 'Two'     ;'3' = 'Three'   ;'4' = 'Four'   ;'5' = 'Five' ; 
            '6' = 'Six'     ;'7' = 'Seven'   ;'8' = 'Eight'  ;'9' = 'Niner'; 
            '.' = 'Point'   ;'!' = 'Exlamationmark';'?' = 'Questionmark'; 
        } 
    ) 
   ...