I am the main developer of Justmapzz, which uses GMAP.NET for map viewing.
Since 2 days our users can no longer view OSM, because you blocked that library for everybody.
We have always used GMAP.NET "as is", without diving into the code.
Now that Grant Slater indicated a portion of the code that defines a user-agent, I had a close look at that detail and I must admit, that this definition of the user-agent gives room for doubt, but mainly because it makes it more difficult for you to develop server behaviour, based on the user-agent info.
So I changed the definition of the user-agent to a fixed string complying with the directions for the syntax of user-agents and checked the response of your tile server to discover that nothing has changed, still error 403. Apparently you use more filter conditions.
But wait a minute! A user agent was not designed for access control, but mainly for indicating the nature of a request initiator (=the software) to optimize the web response (an exception to this is the detection and blocking of bots).
That is why the vast majority of service providers use license keys, or whatever they call them.
Then every web request must include the license key in order to gain access to the requested information.
This system also makes it easy to check the usage level or block an individual license for any reason, without affecting other users.
In this case, it would be much easier to detect the users that cause capacity problems and block only the problematic users, instead of "punishing" all users of a certain app, based on the software libraries, that app uses.
Have you ever considered the introduction of a license key system?
In the mean time, what must we do to comply with your usage policy, other than changing the user-agent, which appeared to be insufficient?
Thanks for any help.
_______________________________________________ dev mailing list firstname.lastname@example.org https://lists.openstreetmap.org/listinfo/dev