Thanks
I guess this is the best way.
I just want to stop users accessing the asset by sharing the URL of the pdf.
So when they hit the URL they are blocked and presented with the form.
I have done with before. We had an asset listing that listed the PDF files. I used the base64 keyword to encode the URL. Then, if the user agreed to the agreement, I would use javascript to decode it and then present that to the user. If they were smart enough they could figure out the URL, but probably 99% of our users would have no clue.