AdUsers : Now adds login scripts to launch relevant admin panels. Sharepoint_Export : added a new mass export version

This commit is contained in:
2025-02-03 16:09:31 +01:00
parent 1018c693fd
commit b8bd6bd142
3 changed files with 689 additions and 6 deletions

View File

@ -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