Before a purchase can be made, the user will need to register and login.
When the order is processed, the store order summary behavior should store the users ID
this will create a relation from the order to the user.
The recordset that returns the downloadable products will use the users ID as a filter to only show products the user has purchased.
See the Creating a Download center tutorial for more details