Custom GLSL Filter for Viewport
You would have to modify Blender on the source-code level to inject custom screenspace shaders to the viewport. Something that requires a decent knowledge of C/C++ and Blender's codebase. 

But the latest build of Blender (since 2.73) actually has SSAO and DoF built into the viewport. You can try it out by downloading the daily build from http://builder.blender.org