2016-11-08 10 views
0

私は次のスクリプトを作成しました。パターンTEMPPW + 3個と特殊文字1個のパスワードを生成したいと思います。このスクリプトでは何を変更する必要がありますか?単語と4つの生成された文字を含むパスワード

マーティンは答えたくないので、私はそれをやるまあ
# 
# Description: Wlacza konta, resetuje hasla i ustawia zmiane hasla przy pierwszym logowaniu. 
# 
Import-Module ActiveDirectory 
Add-Type -AssemblyName System.Web 
# Pobiera liste kont z pliku UserList.txt 
# Jeden user na wiersz, bo sie wysypie. 
$users = Get-Content -Path 'G:\Shares\xx xxx\ResetPassword\UserList.txt' 
# 
ForEach ($user in $users) 
{ 
$unsecuredpwd = [System.Web.Security.Membership]::GeneratePassword(10, 3) 
# Szyfruje haslo, a potem podstawia je w miejsce zmiennej unsecurepwd. 
$password = ConvertTo-SecureString -AsPlainText $unsecuredpwd -Force 
# Ustawia haslo dla konta. 
Get-ADUser $user | Set-ADAccountPassword -NewPassword $password -Reset 
# Wymusza zmiane hasla przy logowaniu. 
Get-ADUser $user | Set-AdUser -ChangePasswordAtLogon $true 
# Wlacza konto. 
Enable-ADAccount -Identity $user 
Write-Host “uzytkownik: $user” 
Write-Host “haslo: $unsecuredpwd” 
Write-Host “ `r`n`r`n” 
} 
Read-Host -Prompt "Nacisnij enter, zeby wyjsc" 

答えて

0

、;) あなたはこのような何かをしたいと思う:ランダム3桁の番号を生成

$a = 'TEMPW' 
$a += -join ((48..57) | get-random -count 3 | % {[char]$_}) 
$a += -join ((58..64) | get-random | % {[char]$_}) 
2

はかなりあります簡単、-Minimum-MaximumパラメータでGet-Randomを使用する:ランダムな「特殊文字」を生成

# Maximum is exclusive, largest potential output is 999 
$RandomNumber = Get-Random -Minimum 100 -Maximum 1000 

も同様に簡単で、私達ができますだから、全体のパスワードを生成する

$RandomSpecialChar = [char](33..47 |Get-random) 

、我々は文字列形式の演算子(-f)を使用して行うことができます:33と47の間でASCIIの範囲(! " # $ % & ' () * + , - . /)からのシンボルの一つをつかむ

$unsecuredpwd = "TEMPPW{0}{1}" -f (Get-Random -Minimum 100 -Maximum 1000),[char](33..47 |Get-random) 
関連する問題