This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Export mailbox of deprovisioned user in ARS 7.x

In previous versions of ARS v6.x I've been able run the following script to export an Exchange mailbox to a .pst file as part of a deprovisioning policy:

function onDeprovision($Request) {

# Check target object class
if ($Request.Class -ne "user") { return; }

# Get user information
$userLogon = $dirObj.Get("sAMAccountName")
if (($userLogon -eq $null) -or ($userLogon -eq "")) { return; }

$userSMTP = $dirObj.Get("mail")
if (($userSMTP -eq $null) -or ($userSMTP -eq "")) { return; }

$userGN = $dirObj.Get("givenName")
if (($userGN -eq $null) -or ($userGN -eq "")) { return; }

$userSN = $dirObj.Get("sn")
if (($userSN -eq $null) -or ($userSN -eq "")) { return; }

$dstPath = "\\myfileserver.acme.com\Deprovisioned-Users" + "\" + $userGN + "." + $userSN
$fileName = $userLogon + "_mbox.pst"
$jobName = $userLogon + "_mbox-export"

# Perform path testing
if (Test-Path -Path "$dstPath\$fileName") { return }
if (-not (Test-Path -Path $dstPath)) { New-Item -Path $dstPath -ItemType Directory -Force -Confirm:$false }

# Add PowerShell snapin for Exchange 2010 management
Add-PSSnapin -Name "Microsoft.Exchange.Management.PowerShell.E2010" -ErrorAction SilentlyContinue

# Submit Exchange Mailbox Export Request
New-MailboxExportRequest -Mailbox $userSMTP -FilePath "$dstPath\$fileName" -Name $jobName
} # End function onDeprovision

This process does not work in ARS v7.x which results in the following error:

Administrative Policy returned error. At line: 18 char:5. Exception calling "Get" with "1" argument(s): "The directory property cannot be found in the cache."

The error seems pretty explicit but for some reason I haven't been able to get this to work. I'm obviously doing something (or many things) wrong, any recommendations?

 

Secondary question: Does it make more sense to use a workflow for this?

Parents
  • as a troubleshooting step, I would recommend to execute the same script (calls to Exchange mailbox) on the same ARS server (under the ARS Service Account) explicitly.
    ARS 7.x got some changes the way it talks to Exchange. For example ARS 6.9 cannot read EX2016 mbx size and number of items, while ARS7.x can read it (though officially EX2016 is not supported yet)
Reply
  • as a troubleshooting step, I would recommend to execute the same script (calls to Exchange mailbox) on the same ARS server (under the ARS Service Account) explicitly.
    ARS 7.x got some changes the way it talks to Exchange. For example ARS 6.9 cannot read EX2016 mbx size and number of items, while ARS7.x can read it (though officially EX2016 is not supported yet)
Children
No Data