1
- # Requires -RunAsAdministrator
1
+ # Requires -RunAsAdministrator
2
2
# Requires -Version 7
3
3
Set-StrictMode - Version 7
4
4
@@ -51,7 +51,8 @@ $ScriptVersion = "20.04.20.144059"
51
51
$ScriptShortVersion = " 20.04.0"
52
52
$ScriptVersionStatus = " DEV WIP"
53
53
$dirScriptDirRoot = (Split-Path $myinvocation.MyCommand.Path )
54
- $PasswordLength = 12
54
+ $PasswordLength = 10
55
+ $PasswordPart = " Qg1."
55
56
# regionend
56
57
57
58
# region function write-log
@@ -112,12 +113,15 @@ if (!(Test-Path $InputFileName)) {
112
113
Write-Warning " The input file name you specified can't be found."
113
114
Write-Log - LogFile $LogFile - Message " ZOBEC Consulting" - Level INFO
114
115
exit
116
+ } else {
117
+ Write-Log - LogFile $LogFile - Message " dirScriptDirRoot $dirScriptDirRoot " - Level DEBUG
118
+ Write-Log - LogFile $LogFile - Message " InputFileName $InputFileName " - Level DEBUG
115
119
}
116
120
$GeneratedUsersList = $dirScriptDirRoot + " \GeneratedUsersList.csv"
117
121
118
122
119
123
# Enter a path to your import CSV file
120
- $UsersList = Import-Csv " $InputFileName "
124
+ $UsersList = Import-Csv " $InputFileName " - Delimiter " ; " - ErrorAction Stop
121
125
# Password length and character set to use for random password generation
122
126
$ascii = $NULL ; For ($a = 33 ; $a -le 126 ; $a ++ ) { $ascii += , [char ][byte ]$a }
123
127
@@ -146,6 +150,12 @@ foreach ($User in $UsersList) {
146
150
# split variables
147
151
$FullName = " $LastName $FirstName "
148
152
153
+ Write-Log - LogFile $LogFile - Message " UserID $UserID " - Level DEBUG
154
+ Write-Log - LogFile $LogFile - Message " FullName $FullName " - Level DEBUG
155
+ Write-Log - LogFile $LogFile - Message " Description $Description " - Level DEBUG
156
+ Write-Log - LogFile $LogFile - Message " IsAdmin $IsAdmin " - Level DEBUG
157
+ Write-Log - LogFile $LogFile - Message " IsRemoteUser $IsRemoteUser " - Level DEBUG
158
+
149
159
# Check if the user account already exists in AD
150
160
# If (Get-LocalUser -F { Name -eq $UserID } -ErrorAction Continue) {
151
161
# #If user does exist, output a warning message
@@ -156,9 +166,12 @@ foreach ($User in $UsersList) {
156
166
# Else {
157
167
# #If a user does not exist then create a new user account
158
168
169
+ # generating new password
159
170
Write-Log - LogFile $LogFile - Message " Generating new password" - Level DEBUG
160
171
$GetRandomPassword = Get-TempPassword - length $PasswordLength - sourcedata $ascii
161
172
Write-Log - LogFile $LogFile - Message " New password '$GetRandomPassword ' was generated" - Level DEBUG
173
+ $GetRandomPassword += $PasswordPart
174
+ Write-Log - LogFile $LogFile - Message " Updated password '$GetRandomPassword '" - Level DEBUG
162
175
163
176
# converting to secure string
164
177
Write-Log - LogFile $LogFile - Message " converting password to secure string" - Level DEBUG
@@ -168,8 +181,8 @@ foreach ($User in $UsersList) {
168
181
# creating new account
169
182
Write-Log - LogFile $LogFile - Message " Creating new account." - Level DEBUG
170
183
Try {
171
- New-LocalUser - Name " $UserID " - FullName " $FullName " - Description " $Description " - Password $NewPassword - ErrorAction Stop
172
184
Write-Log - LogFile $LogFile - Message " New-LocalUser Name '$UserID ', FullName '$FullName ', Description '$Description ', Password '$NewPassword '" - Level DEBUG
185
+ New-LocalUser - Name " $UserID " - FullName " $FullName " - Description " $Description " - Password $NewPassword - ErrorAction Stop
173
186
}
174
187
Catch {
175
188
Write-Log - LogFile $LogFile - Message " Creating of new account was failed." - Level DEBUG
@@ -181,8 +194,8 @@ foreach ($User in $UsersList) {
181
194
182
195
# assigning Users group
183
196
Try {
184
- Add-LocalGroupMember - Group " Users" - Member " $UserID " - ErrorAction Stop
185
197
Write-Log - LogFile $LogFile - Message " Add-LocalGroupMember Group 'Users', Member '$UserID '" - Level DEBUG
198
+ Add-LocalGroupMember - Group " Users" - Member " $UserID " - ErrorAction Stop
186
199
}
187
200
Catch {
188
201
Write-Warning $_.Exception.Message
@@ -195,8 +208,8 @@ foreach ($User in $UsersList) {
195
208
If ($IsAdmin -like $True ) {
196
209
Write-Log - LogFile $LogFile - Message " IsAdmin: True" - Level DEBUG
197
210
try {
198
- Add-LocalGroupMember - Group " Administrators" - Member " $UserID " - ErrorAction Stop
199
211
Write-Log - LogFile $LogFile - Message " Add-LocalGroupMember Group 'Administrators', Member '$UserID '" - Level DEBUG
212
+ Add-LocalGroupMember - Group " Administrators" - Member " $UserID " - ErrorAction Stop
200
213
}
201
214
catch {
202
215
Write-Warning $_.Exception.Message
@@ -215,8 +228,8 @@ foreach ($User in $UsersList) {
215
228
Write-Log - LogFile $LogFile - Message " IsRemoteUser: True" - Level DEBUG
216
229
# assigning Remote Desktop Users group
217
230
try {
218
- Add-LocalGroupMember - Group " Remote Desktop Users" - Member " $UserID " - ErrorAction Stop
219
231
Write-Log - LogFile $LogFile - Message " Add-LocalGroupMember Group 'Remote Desktop Users', Member '$UserID '" - Level DEBUG
232
+ Add-LocalGroupMember - Group " Remote Desktop Users" - Member " $UserID " - ErrorAction Stop
220
233
}
221
234
catch {
222
235
Write-Warning $_.Exception.Message
0 commit comments