Vanaf Exchange 2010 is het mogelijk om d.m.v. het New-MailboxImportRequest pst bestanden te importeren. Standaard kan dit cmdlet niet uitgevoerd worden. Het New-MailboxImportRequest cmdlet is namelijk geen standaard onderdeel van de standaard RBAC groepen.
RBAC
Om een nieuwe groep hiervoor aan te maken kun je gebruik maken van de Exchange Management Shell. Dit om te voorkomen dat er specifieke rechten ingesteld worden op gebruikers:
New-RoleGroup “Mailbox import and export Rights”
Met bovenstaande cmdlet maken we een nieuwe RBAC groep aan genaamd Mailbox import and export rights. De volgende stap is het toevoegen van het cmdlet aan de RBAC groep:
new-ManagementRoleAssignment -Role “Mailbox Import Export” -SecurityGroup “Mailbox import and export Rights”
Met bovenstaande cmdlet voegen we de rol Mailbox Import Export toe aan de eerder gemaakte RBAC groep.
Add-RoleGroupMember “Mailbox import and export Rights” -Member Administrator
Met het laatste cmdlet voegen we de gebruiker administrator toe aan de groep Mailbox import and export Rights. Wanneer dit cmdlet is uitgevoerd dient de Exchange Management Shell opnieuw opgestart te worden.
NewMailboxImportRequest
Voordat er een PST geimporteerd kan worden dient nog aan een andere belangrijke voorwaarde voldaan te worden. De groep Exchange Trusted subsystem dient rechten te hebben om de share met PST bestanden te benaderen. Wanneer dit niet gedaan wordt kan de melding Couldn’t connect to target mailbox voorkomen.
Wanneer ook deze laatste stap is geregeld kun je de import starten:
New-MailboxImportRequest -Mailbox Johan -FilePath \\File01\PST\johan.pst
In het bovenstaande voorbeeld importeren we de inhoud van de PST genaamd johan.pst wat in de share PST op de server file01 is geplaatst. De inhoud van deze PST wordt geimporteerd in de mailbox met de naam Johan.
Het proces kan gemonitord worden met de cmdlets:
- Get-MailboxImportRequest
- Get-MailboxImportRequestStatistics
Get-MailboxImportRequest
Dit commando geeft standaard een overzicht van de Mailbox Import Requests wat op dat moment uitgevoerd wordt.
Bijvoorbeeld:
Get-MailboxImportRequest -Identity “Johan\MailboxImport”
Hierbij bestaat de identity uit de naam van de mailbox gecombineerd met de naam van het import request. In bovenstaande voorbeeld vragen we de status op van het mailbox import request wat als jobname heeft MailboxImport. De data wordt in dit geval geimporteerd in de mailbox johan.
Get-MailboxImportRequestStatistics
Geeft een gedetaileerd overzicht van het Mailbox Import Request. Dit cmdlet kan i.c.m. het Get-MailboxImportRequest cmdlet uitgevoerd worden:
Get-MailboxImportRequest | Get-MailboxImportRequestStatistics
Geeft een overzicht van de huidige Mailbox Import Requests met additionele informatie.
Wanneer er zeer gedetaileerde informatie nodig is, bijvoorbeeld het aantal items, percentage etc. dan kan |FL nog toegevoegd worden aan het eerdere voorbeeld:
Get-MailboxImportRequest | Get-MailboxImportRequestStatistics | FL
Couldn’t connect to target mailbox
Zoals eerder besproken kan de foutmelding Couldn’t connect to target mailbox voorkomen. Om dit probleem te troubleshooten kun je achter het New-MailboxImportRequest de parameter -v van verbose worden toegevoegd. In onderstaande afbeelding is een voorbeeld hiervan te zien:
In dit geval stonden de rechten op de share goed en was er geen firewall die problemen veroorzaakte. Wanneer je op het internet gaat zoeken zijn er echter wel meer mensen te vinden die problemen hebben.
Oorzaak van dit probleem blijkt te zijn: de CAS Array. Om dit probleem tijdelijk op te lossen kun je ervoor kiezen om de RpcClientAccessServer waarde op een database tijdelijk aan te passen. Een misschien wat handigere manier is om een aparte DB hiervoor aan te maken waarin je de betreffende mailbox zet.
De RpcClientAccessServer waarde kan aangepast worden d.m.v. het volgende cmdlet:
set-MailboxDatabase MBDBTEMP -RpcClientAccessServer cas01.corp.local
In bovenstaande voorbeeld wijzigen we de RpcClientAccessServer tijdelijk naar één van de CAS servers zelf.
Vergeet niet nadat de betreffende actie is uitgevoerd de waarde weer te herstellen naar het origineel:
set-MailboxDatabase MBDBTEMP -RpcClientAccessServer casarray.corp.local
Remove-MailboxImportRequest
Net als een move request wordt een import request niet automatisch verwijderd. Een import request dient handmatig opgeschoond te worden. Dit kan gedaan worden d.m.v. het cmdlet Remove-MailboxImportRequest:
remove-MailboxImportRequest -identity johan\MailboxImport
Met bovenstaande cmdlet verwijderen we de eerder aangemaakte import request. Heb je meerdere import requests die je tegelijkertijd wil opschonen dan kun je het volgende cmdlet draaien:
get-MailboxImportRequest | where {$_.status -eq “completed”} | remove-MailboxImportRequest
Met bovenstaande voorbeeld zoeken we eerst alle mailbox import requests op met de status completed. Vervolgens verwijderen we deze requests.









