A discussion I had with some coworkers over lunch reminded
me of another “dumpster trick” for Exchange: items deleted via IMAP can be
recovered via the dumpster. I previously described the per-folder dumpster concept
26th‘s blog entry.
IMAP has a different deletion model than Outlook or
most other POP clients. If you’re familiar with Pine, then you’ll recognize the model:
When an item is deleted, it remains in the same folder, with a “deleted” property
on it. In order to completely remove it, the items “marked for deletion” must be expunged
from the folder. In Outlook and Outlook Express, this is done via Edit | Purge Deleted
When you’re using IMAP against an Exchange server and
you mark an item for deletion and then expunge deleted items in that folder, it’s
moved into the per-folder dumpster. The item can be retrieved in Outlook by setting
a registry key, or in OWA with a specially formatted URL. See my
previous blog entry for details.
Interesting trivia: In a way, the dumpster is Exchange’s
version of the IMAP deletion model. Items remain in a “folder” with a “softdeleted”
property set on them. If you sniff the HTTP traffic when viewing the dumpster with
OWA, you’ll see that it performs an HTTP request and does a search in the same folder
with a different scope: FROM Scope(‘SOFTDELETED Traversal of
“”‘) instead of the usual FROM Scope(‘SHALLOW TRAVERSAL
OF “”‘). The server removes items from the dumpster when the PR_DELETED_ON property
is greater than the number of days for which deleted items retention is configured.