Im пытается создать сценарий, в котором потребуется несколько пользователей в CSV-файле, а затем измените свой пароль и включите его в Active Directory. Беда в том, что я не могу показаться, чтобы получить все пользователи на выходе либо в CSV или текстовый файл, который выглядит следующим образом:Вывод всех пользователей и паролей в файл
User1 Password User2 Password User3 Password User4 Password
Я попытался Write-Host
и что не работает, так что я играл с массив, но я все еще не могу его получить. Может кто-то, пожалуйста, помогите мне с тем, что я делаю неправильно, чтобы я мог заставить всех пользователей выводить на стол?
Вот код, который я использую:
if (-not (Get-Module ActiveDirectory)){
Import-Module ActiveDirectory
}
#Construct an out-array to use for data export
$OutArray = @()
# User setup
$users = Import-Csv "C:\accounts.csv"
foreach ($user in $users) {
# set up random number generator
$rand = New-Object System.Random
#Generate a new password
$NewPassword = [char]$rand.next(65,90) + [char]$rand.next(65,90) +
[char]$rand.next(48,57) + [char]$rand.next(97,122) +
[char]$rand.next(48,57) + [char]$rand.next(97,122) +
[char]$rand.next(97,122) + [char]$rand.next(35,38)
#setup username variables
$username = $user.samAccountName
#enable ad account
Enable-ADAccount -Identity $username
#set-ad password
Set-ADAccountPassword $username -NewPassword (ConvertTo-SecureString -AsPlainText "$NewPassword" -Force) -PassThru -Reset
#$outarray += $Username,$NewPassword
#Write-Host "Password has been set for:" $username $NewPassword
}
#After the loop, export the array to CSV
$outarray | Export-Csv "c:\login.csv"
'System.Random' никогда не должен использоваться для паролей. Он использует предсказуемый алгоритм. Вместо этого вы должны использовать 'System.Security.Cryptography.RNGCryptoServiceProvider' или даже что-то очень простое, например' [System.Web.Security.Membership] :: GeneratePassword (8,0) '. –
@krousemw С точки зрения безопасности было бы мозговой мыслью использовать стороннюю незащищенную веб-страницу для генерации ваших паролей. Атаки на словах, подслушивание и «человек в середине» - слишком легкие атаки. – vonPryz