I renamed this to clarify the difference from getUserFromHash()