Archive

Posts Tagged ‘Exchange 2007’

Easy exch2k7 csv bulk user import with new-mailbox script

July 25th, 2008 No comments

Even om aan te geven dat deze blog echt van een nerdo is hieronder een script waarmee je eenvoudig een x aantal gebruikers kan importeren uit een csv bestand in een omgeving van Windows Server 2008 en Exchange 2007. Het is een PowerShell script overigens.

De eerste regel van het csv bestand ziet er als volgt uit:

FirstName,LastName,Name,Alias,UserPrincipalName,SamAccountName,Title,Password,Database,

OrganizationalUnit

Een nieuwe variable toevoegen kan door deze achteraan bij te voegen en in onderstaand script het op te nemen met <variabele naam> $_.<variabele naam>. Deze variabele naam is dus de toevoeging aan het cvs bestand. In onderstaand voorbeeld is namelijk 1( Title) van de vele variabelen uit Set-User meegenomen.

Function secureit( $string )
{
$ss = New-object System.Security.SecureString
$string.GetEnumerator() | foreach-object { $ss.AppendChar( $_ ) }
$ss
}

import-csv c:\New-MailboxUser.csv | foreach-object {New-Mailbox -Name $_.Name -Alias $_.Alias -OrganizationalUnit $_.OrganizationalUnit -UserPrincipalName $_.UserPrincipalName -SamAccountName $_.SamAccountName -FirstName $_.FirstName -LastName $_.LastName -Password (secureit $_.Password) -ResetPasswordOnNextLogon $true -Database $_.Database}

import-csv c:\New-MailboxUser.csv | foreach-object {set-user -identity $_.UserPrincipalName -Title $_.Title}

Opslaan als .ps1 bestand en plaatsen in de script directory van Exchange 2007. CSV bestand plaatsen in het opgegeven pad, hier is dat C:\.

Mocht je het csv bestand aanmaken in Excel zorg en dan voor dat jet het bestand na bewerkt door alle ; te vervangen door een ,(komma). Daarbij is bovenstaand script eenvoudig uit te breiden met meerdere regels die importeren uit hetzelfde csv bestand. Het toevoegen aan groepen zou bijv. ook tot de mogelijkheden kunnen behoren.

Op deze manier zijn er geen extra tools nodig van bijv. Quest.