Short version:
Add a floater similar to floater_tos.xml that is configurable on the region/estate level that specifies the "terms of access" for that region/estate. Floater may or may not allow for data URLs.
Long Version:
Reasons for implementation
1) The Covenant feature applies only to land owners.
2) Current techniques generally revolve around llGiveInventory() on sensor() or collision_start() at a telehub location.
3) Notecards are not modal, and do not prevent people from accessing a region or estate
4) Informing potential visitors of the "terms of access" prior to teleporting or entering a region would allow region/estate owners to keep out unwanted visitors, and give Residents an idea of the kinds of things to expect at their destination.
Method of implementation
1) Teleportation: if the TOA is not accepted, the teleport is cancelled
2) Sim Crossing: if the TOA is not accepted, sim crossing is cancelled (effect should be similar to parcel access feature for blocking unlisted avatars)
3) Direct Login: if the TOA is not accepted, the Resident is given the option to quit SL or login to SL (resulting in an effect similar to "your destination is unavailable")