AdUsers : Now adds login scripts to launch relevant admin panels. Sharepoint_Export : added a new mass export version
This commit is contained in:
@ -15,6 +15,29 @@ switch ($modExiste) {
|
||||
Default {Import-Module ActiveDirectory;Import-Module PSWriteColor}
|
||||
}
|
||||
|
||||
#On récupere le nom de la forest pour déposer les scripts au bon endroit
|
||||
$domainInfos = Get-ADDomain
|
||||
$forestName = $domainInfos.Forest
|
||||
|
||||
#On crée et place les scripts de logon pour tous les users
|
||||
New-Item -Path C:\WINDOWS\SYSVOL\sysvol\$forestName\scripts\ -Name "Tech-N1.bat" -ItemType "file"
|
||||
$contentToAdd = @"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START dsa.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START dhcpmgmt.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START printmanagement.msc"
|
||||
"@
|
||||
Add-Content C:\WINDOWS\SYSVOL\sysvol\$forestName\scripts\Tech-N1.bat $contentToAdd
|
||||
|
||||
New-Item -Path C:\WINDOWS\SYSVOL\sysvol\$forestName\scripts\ -Name "Tech-N2.bat" -ItemType "file"
|
||||
$contentToAdd = @"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START dsa.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START dhcpmgmt.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START printmanagement.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START dnsmgmt.msc"
|
||||
cmd.exe /c "SET __COMPAT_LAYER=RunAsInvoker & START gpmc.msc"
|
||||
"@
|
||||
Add-Content C:\WINDOWS\SYSVOL\sysvol\$forestName\scripts\Tech-N2.bat $contentToAdd
|
||||
|
||||
#On crée le CSV pour y stocker les ID
|
||||
$pcName = (Get-ComputerInfo).CSName
|
||||
Set-Content "C:\techLogins-$pcName.csv" -Value "Username,Password"
|
||||
@ -60,8 +83,8 @@ $grpDomainAdm = "S-1-5-21-$domaineSID-512"
|
||||
$grpPrintOp = "S-1-5-32-550"
|
||||
#$grpServerOp = "S-1-5-32-549" Pas utilisé
|
||||
#$grpPowerUsers = "S-1-5-32-547" Déprécié
|
||||
$grpDHCPadm = "S-1-5-21-$domaineSID-1135"
|
||||
$grpDHCPuser = "S-1-5-21-$domaineSID-1134"
|
||||
$grpDHCPadm = "Administrateurs DHCP"
|
||||
$grpDHCPuser = "Utilisateurs DHCP"
|
||||
$grpGPOadmin = "S-1-5-21-$domaineSID-520"
|
||||
$grpNetAdmin = "S-1-5-32-556"
|
||||
#################################
|
||||
@ -75,7 +98,7 @@ ForEach($user in $userList){
|
||||
# On vérifie si l'utilisateur existe déjà, passe au suivant si oui
|
||||
$existingUser = Get-ADUser -Filter { Name -eq $user } -ErrorAction SilentlyContinue
|
||||
if ($existingUser) {
|
||||
Write-Color -Text "L'utilisateur ", $user, " existe deje. Application des permissions." -Color White, Yellow
|
||||
Write-Color -Text "L'utilisateur ", $user, " existe deja. Application des permissions." -Color White, Yellow
|
||||
}
|
||||
$userPass = (GenPass)
|
||||
$userEncPass = ConvertTo-SecureString -String $userPass -AsPlainText -Force
|
||||
@ -91,7 +114,7 @@ ForEach($user in $userList){
|
||||
#...puis on l'ajoute aux bons groupes
|
||||
switch ($user) {
|
||||
"Tech-N1"{$Groups = @($grpAccountOp,$grpPrintOp,$grpDHCPuser)}
|
||||
"Tech-N2"{$Groups = @($grpAccountOp,$grpPrintOp,$grpDHCPadm,$grpGPOadmin,$grpNetAdmin)}
|
||||
"Tech-N2"{$Groups = @($grpAccountOp,$grpPrintOp,$grpGPOadmin,$grpNetAdmin,$grpDHCPadm)}
|
||||
"Tech-N3"{$Groups = @($grpDomainAdm)}
|
||||
Default {}
|
||||
}
|
||||
@ -101,7 +124,7 @@ ForEach($user in $userList){
|
||||
|
||||
ForEach ($Group in $Groups) {
|
||||
|
||||
Add-ADPrincipalGroupMembership $User -MemberOf $Group
|
||||
Add-ADPrincipalGroupMembership $User -MemberOf $Group
|
||||
|
||||
}
|
||||
|
||||
@ -111,5 +134,6 @@ ForEach($user in $userList){
|
||||
Write-Error "Erreur pour l'utilisateur $user : $_"
|
||||
}
|
||||
}
|
||||
|
||||
Get-ADUser Tech-N1 | Set-ADUser -ScriptPath "Tech-N1.bat"
|
||||
Get-ADUser Tech-N | Set-ADUser -ScriptPath "Tech-N2.bat"
|
||||
Write-Color -Text "Les utilisateurs ainsi que leur mots de passes ont ete exportes ici : ","C:\techLogins-$pcName.csv" -Color White,Green
|
Reference in New Issue
Block a user