Of course it is, that’s literally contract law. You’re agreeing a contract to licence them access with specific terms.
The reason they invented the standard licences is to avoid this cost and effort. Do you really want to write a 200 page legal contract for every user for software you’re giving away for free?
Is that the implication? I thought that the legal contract you mentioned was a standard document, basically the same for everyone that was licensed. But I am not s lawyer, and I don't pretend to be one.
It would be neat to have this licese codified (Like we have MIT, GPL, etc), with the proper incentives to "ask for open source access, if I lile you, you might get it". And, of course, a "contract" that gave licensees the open source benefits.