(QENG-431) expanded and improved role support in beaker - reapply

This re-applies the reverted role support for beaker.
Why are we defining this here? It seems like this version of this method is never used (nor as safe as the other version)