Thanks for posting! Here are some example steps of how you might implement this:
Place a popup or reusable sign up element on the page that User1 will have the list and eventually share .
Have a workflow event on page load that asses whether the Current user is signed up or not. If they are not, use conditions or privacy rules to make it so they do not see the contents of the page but rather see the Sign Up popup or reusable element.
That way, the the user will be able sign up and still be the same page that was shared, thereby viewing the list.