Archive

Articles taggués ‘Comptes’

Créer 1000 comptes de test

Pour faire des tests sur une maquette, il est parfois nécessaire de créer beaucoup de comptes.
Il est possible de créer des comptes Test1, Test2, Test3… Test58.

Efficace mais par très fun. Il manque un peu d’accents ou de caractères spéciaux.
Je vous propose une liste de 1000 acteurs et actrices du cinéma français et international.

cinema

A télécharger ici.

Vous pourrez importer ce fichier dans votre Active Directory avec ce script.

?View Code POWERSHELL
Import-Csv -Path .\cinema.txt | foreach {
$firstname = (Get-Culture).TextInfo.Tolower($_.givenname) 
$firstname = (Get-Culture).TextInfo.ToTitleCase($firstname) 
$lastname = (Get-Culture).TextInfo.ToUpper($_.surname) 
$name = $lastname + ' ' + $firstname 
$logname = $lastname.replace("-","") 
$name 
if ($logname.Length -le 6) { 
$samaccount = $firstname.Remove(1) + "." + $logname 
} 
Else { 
$samaccount = $firstname.Remove(1) + "." + $logname.Remove(6) 
} 
$upn = $samaccount + "@labnan.local" 
$AccountPassword = (ConvertTo-SecureString "P@ssW0rd" -AsPlainText -force)   
New-ADUser -Name $name -GivenName $firstname -Surname $lastname -Path "OU=Comptes,DC=labnan,DC=local" -SamAccountName $samaccount -UserPrincipalName $upn -AccountPassword $AccountPassword -Enabled $true -ChangePasswordAtLogon $true 
}

Importer la création de comptes Active Directory 2008 R2

Voici comment importer dans Active Directory 2008 R2 des comptes depuis un fichier texte.
Le login est formaté par rapport au nom et prénom de l’utilisateur. Dans cette exemple, on utilise les 6 premières lettres du nom et les 2 premières lettres du prénom.

?View Code POWERSHELL
Import-Csv -Path .\Import\import-adms.txt | foreach {
$firstname = (Get-Culture).TextInfo.Tolower($_.prenom)
$firstname = (Get-Culture).TextInfo.ToTitleCase($firstname)
$lastname = (Get-Culture).TextInfo.ToUpper($_.nom)
$name = $lastname + ' ' + $firstname
if ($_.nom.Length -le 6) {
$samaccount = $lastname + $firstname.Remove(2)
}
Else {
$samaccount = $lastname.Remove(6) + $firstname.Remove(2)
}
$descrition = $_.Societe + "-" + $_.Description
$upn = $samaccount + "@domain.fr"
$AccountPassword = (ConvertTo-SecureString "Pass2Key2" -AsPlainText -force)
 
New-ADUser -Name $name -GivenName $firstname -Surname $lastname -Path "OU=Comptes,DC=corp,DC=domain,DC=fr" -SamAccountName $samaccount -Description $descrition -UserPrincipalName $upn -AccountPassword $AccountPassword -Enabled $true -ChangePasswordAtLogon $true
}

Exporter les comptes d’ordinateurs

Voici une ligne de commande utile pour exporter la liste des comptes d’ordinateurs d’une OU en vu de faire un peu de ménage.

?View Code POWERSHELL
Get-QADComputer -IncludeAllProperties -SearchRoot domain.local\Paris -Sizelimit 0 | Select-Object cn,OSName,OSServicePack,pwdlastset,ParentContainer | Export-Csv -Path Paris_Computers_List.csv

Marquer les boites dont le compte est désactivé.

Ce script permet de d’appliquer un marquage sur les attributs personnalisés des boites dont le compte AD est désactivé.
Il est ensuite possible d’appliquer plus facilement un filtre afin de déplacer toutes ces boites aux lettres.

?View Code POWERSHELL
Get-Mailbox -Database ccr03\is_paris_10 | foreach {
$user = Get-QADUser -Identity $_.alias
if ($user.AccountIsDisabled -eq "true"){
$user
Set-Mailbox -Identity $user.UserPrincipalName -CustomAttribute4 "Disabled_on_Paris_10"
}
}

Importer l’activation de comptes OCS.

Les deux scripts suivant exécutés dans l’ordre permettent d’activer et de configurer les comptes présents dans un fichier pour OCS.
Il n’y a que les fonctionnalités de messagerie instantané qui seront activés.

Activation des comptes:

?View Code POWERSHELL
Import-Csv .\Import_ocs.csv | ForEach-Object{
$user = $_.alias
$sip="sip:" + $user + "@domain.com"
get-qaduser $user | set-qaduser -oa @{
'msRTCSIP-UserEnabled'=$true
'msRTCSIP-PrimaryUserAddress'=$sip
'msRTCSIP-PrimaryHomeServer'="CN=LC Services,CN=Microsoft,CN=Epool,CN=Pools,CN=RTC Service,CN=Microsoft,CN=System,DC=domain,DC=local"
}
}

Configuration des comptes:

?View Code POWERSHELL
Import-Csv .\Import_ocs.csv | ForEach-Object{
$user = $_.alias
$sip="sip:" + $user + "@domain.com"
get-wmiobject -class MSFT_SIPESUserSetting | Where-Object { $_.PrimaryURI -eq $sip } | ForEach-Object { 
$_.MeetingPolicy = "CN={1815ED7B-A539-4117-9283-E8DD27CD393E},CN=Policies,CN=RTC Service,CN=Microsoft,CN=System,DC=domain,DC=local" ;
$_.AllowOrganizeMeetingWithAnonymousParticipants = $True ;
$_.EnabledForEnhancedPresence = $True;
$_.EnabledForInternetAccess = $True;
$_.put()| out-null}
$sip
}
Categories: OCS 2007 Tags: ,

Identifier les comptes d’ordinateurs à supprimer

Il arrive au bout d’un certain temps d’avoir des comptes d’ordinateurs qui ne servent plus dans le domaine.
Pour identifier ces comptes qui ne se sont pas connectés depuis longtemps, lancer la commande:

?View Code POWERSHELL
Get-QADComputer -IncludeAllProperties -SizeLimit 0 -SearchRoot "domaine.local/OU_Computers" | ft Name,ParentContainer,OSName,pwdlastset

Les ordinateurs doivent changer leur mots de passe tous les 30 jours.
Si la date de de « pwdlastset » est trop ancienne, il est probable que l’ordinateurs n’existe plus.

Si vous voulez filtrer les odinateurs qui n’ont pas changés de mot de passe depuis plus 90 jours, utilisez la méthode suivante:

?View Code POWERSHELL
$old = (Get-Date).AddDays(-90)
Get-QADComputer -IncludedProperties pwdLastSet  -SizeLimit 0 -SearchRoot "domaine.local/OU_Computers" | where { $_.pwdLastSet -le $old }