This article
http://msdn.microsoft.com/en-us/magazine/dd347546.aspx
suggests to put this piece of code
If Not UrlAuthorizationModule.CheckUrlAccessForPrincipal(_virtualPath, requestContext.HttpContext.User, requestContext.HttpContext.Request.HttpMethod) Then
requestContext.HttpContext.Response.StatusCode = CInt(HttpStatusCode.Unauthorized)
requestContext.HttpContext.Response.[End]()
End If
to the beginning of the route handler's GetHttpHandler method.
If I do so and try to access the catalog item page using the short URL
http://localhost/items/330
I no longer receive the authentication error but simple
The physical path is obviously wrong, there is no such a directory and it tells me that the routing mechanism is not working.