title: I want to add a random generated password to my newly created Active Directory User
body: <p>I want to add a randomly generated password to my newly created Active Directory User. I have written a function to generate the password. I am using Powershell V2.0</p>
  
  <p>I tried the below but did not help. </p>
  
  <pre><code>Import-Module ActiveDirectory
  [xml]$dataSource = Get-Content C:\Names1.xml
  
  $name = Read-Host 'Please enter the table name : '
  
  $user_logon = $dataSource.names.$name | ? { $_.Rule_Label -eq 'Regular service account (user logon)'}
  
  $display_name = $dataSource.names.$name | ? { $_.Rule_Label -eq 'Regular service account (display name)'}
  
  $pre_windows = $dataSource.names.$name | ? { $_.Rule_Label -eq 'Regular service account (pre-Windows 2000)'}
  
  Function GET-Temppassword() { 
  Param(
  [int]$length=10, 
  [string[]]$sourcedata 
  )
  
  For ($loop=1; $loop –le $length; $loop++) { 
      $TempPassword+=($sourcedata | GET-RANDOM)
      }
  
  return $TempPassword
  }
  
  
  switch ($name) 
  { 
      DevTable{foreach($dataRecord in $dataSource) 
      {
      try     
      {
      $cn=$user_logon.Output_Value
      $sAMAccountName=$user_logon.Output_Value
      $givenName=$user_logon.Output_Value
      $sn=$user_logon.Output_Value 
      $displayName=$display_name.Output_Value 
      $userPrincipalName=$sAMAccountName + “@test.com”;
  
      $alphabet=$NULL;For ($a=65;$a –le 90;$a++) {$alphabet+=,[char][byte]$a }
      $TempPassword1 = GET-Temppassword –length 10 –sourcedata $alphabet
  
  
      New-ADUser $cn -SamAccountName $sAMAccountName -GivenName $givenName -Surname $sn -DisplayName $displayName -UserPrincipalName $userPrincipalName -AccountPassword $TempPassword1 -PasswordNeverExpires $true -Path "OU=Service,OU=Accounts,DC=xyz,DC=com"     
  
      set-aduser $cn -replace @{comment="xxyyzz"}
      set-aduser $cn -replace @{"account"=1}      
  
      Add-ADGroupMember -Identity xyz -Member $cn
      Add-ADGroupMember -Identity "Service Accounts" -Member $cn
  
      write-host "New DevTable ADUser has been created!!!";
      }
  
      catch [Exception]
      {
  
          write-host "Error - Requested AD Service Account is already present...Please check &amp; confirm " -foreground "red"
      }
      }   
      break;
      }
  
      default {"The table could not be determined!!!"}    
  
  }   
  
  [System.GC]::Collect()
  </code></pre>
  
  <p>Please have a look.Thanks.</p>