Much more sophisticated implementation of oa_workbench_access() which uses a couple static caches.