Outils pour utilisateurs

Outils du site


sio:ppe3_2:g1:script_dinsertion_utilisateur

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

sio:ppe3_2:g1:script_dinsertion_utilisateur [18/09/2016 02:54] (Version actuelle)
Ligne 1: Ligne 1:
 +===== Script PowerShell =====
  
 +=== Présentation ===
 +
 +Grâce à un fichier .csv d'utilisateurs, le script PowerShell insérera les utilisateur dans l'active directory
 +
 +=== Script ===
 +
 +<code PowerShell>
 +#On importe le module active directory
 +Import-Module ActiveDirectory
 +
 +function Test-ADGroup {
 +   Param([Parameter(Mandatory=$true)][string]$Identity)
 +   $filter = 'Name -eq "'+$Identity+'"'
 +   $groups = Get-ADGroup -Filter $filter
 +   ($groups -ne $null)
 +}
 +
 +#A completer L'ip Gestion de l'emplacement des répertoires personnels
 +$ipServeurDeFichiers="172.25.0.11"
 +$emplacement="\\"+$ipServeurDeFichiers+"\Repbase\"
 +
 +#Gestion de l'emplacement des répertoires partages
 +$partage="\\"+$ipServeurDeFichiers+"\Equipes\"
 +
 +#création de l'unité d'organisation
 +$uo = Read-Host "Donnez le nom de votre UO."
 +$descriptionuo = Read-Host "Donnez la description de votre UO."
 +$connexion = [ADSI]"LDAP://dc=gsba,dc=local"
 +$organisation = $connexion.Create("OrganizationalUnit","ou=$uo")
 +$organisation.put("description","$descriptionuo")
 +$organisation.setInfo()
 +
 +#Encryption du Password
 +$securepwd = ConvertTo-SecureString "Password1" -AsPlainText -Force
 +
 +$chemin = "OU=$uo,DC=gsba,DC=local"
 +
 +Import-Csv .\annuaire.csv -Delimiter ';'|ForEach {
 +
 +
 +#création des groupes globaux
 +
 +    if (!(Test-ADGroup -Identity $_.Equipe)) { 
 +
 +     New-ADGroup -Name $_.Equipe -Path "$chemin" -GroupCategory Security -GroupScope Global -SamAccountName $_.Equipe
 +
 +     #création des groupes de domaine locaux
 +     $nomGroupeLocal = "local_"+$_.Equipe
 +     New-ADGroup -Name $nomGroupeLocal -Path "$chemin" -GroupCategory Security -GroupScope DomainLocal -SamAccountName $nomGroupeLocal
 +
 +     #ajout des groupes globaux dans les groupes de domaines locaux
 +     Add-ADGroupMember -Identity $nomGroupeLocal -Members $_.Equipe
 +    }
 +
 +    #Ajout de l'utilisateur
 +    $sam = $_.SamAccountName
 +    $displayName = $_.Name+" "+$GivenName
 +    $dossier = $emplacement + $sam
 +
 +    New-ADUser -Path "$chemin" -SamAccountName $sam -Name $_.Name -SurName $_.Name -GivenName $_.GivenName -DisplayName "$displayName" -AccountPassword $securepwd -HomeDirectory $dossier -HomeDrive u: -Enabled $True
 +
 +    #On affecte ensuite les utilisateurs dans leur groupe respectif
 +    $group = $_.Equipe
 +    Add-ADGroupMember -Identity $group -Members $sam
 +
 +    #On créé le répertoire de chaque utilisateur
 +    Set-Location $emplacement
 +    New-item -Name $sam -Itemtype directory
 +
 +    #On créé le répertoire de partage propre au groupe de l'utilisateur
 +    $testpartage = $partage + $group
 +    if(Test-Path $testpartage)
 +    {
 +        #Si le partage existe déja
 +        set-ADuser $sam -ScriptPath "sript.bat"
 +    }
 +    Else
 +    {
 +        #Sinon on créé le partage
 +        Set-Location $partage
 +        New-item -Name $group -ItemType directory
 +        Set-Aduser $sam -ScriptPath "sript.bat"
 +    }
 +}
 +
 +</code>
sio/ppe3_2/g1/script_dinsertion_utilisateur.txt · Dernière modification: 18/09/2016 02:54 (modification externe)