After a lot of searching and asking people who are far more clued up than myself, I have concluded that this is impossible mainly because it requires two concurrent DB connections.
In the end, my SSO solution was to build a more traditional SSO system that creates users in the remote site using the user data from the main site. It also updates them on each login to make sure the profiles always stay up to date.