Re: Drop cache_object protocol support
Amos Jeffries <[email protected]> Wed, 25 Jan 2023 14:57:33 +1300
| Newsgroups | gmane.comp.web.squid.devel |
|---|---|
| Message-ID | <[email protected]> |
On 25/01/2023 8:23 am, Alex Rousskov wrote: > On 1/24/23 12:22, Eduard Bagdasaryan wrote: > >> Today we can query cache manager in two ways: >> >> 1. with cache_object:// URL scheme >> 2. with an HTTP request having the 'squid-internal-mgr' path prefix. >> >> I guess that when (2) was initially added at e37bd29, its >> implementation was somewhat incomplete compared to the old >> cache_object scheme (e.g., it lacked authentication No and intentionally. It is designed to share the proxy HTTP authentication and http_access policy instead of the obsolete userinfo@ standard that cache_object uses. Blocker #1: The cachemgr_passwd directly still needs to be cleanly removed, eg replaced by a manager_access ACL based mechanism. >> ) and both methods existed. Since then, however, (2) has been >> improved and it should be equivalent to (1) by now. If so, can we >> completely remove the non-standard cache_object scheme support from >> Squid? This would simplify request forwarding logic, including code >> paths where the existing code complexity may result in vulnerability >> issues. > > > FWIW, I am not aware of any good reason to keep supporting the > "cache_object" URI scheme. > Blocker #2: The squidclient tool still sends cache_object: scheme when given "mgr:" on the CLI. We need to upgrade that first and allow admin some time to upgrade before removing the scheme support in squid itself. > MgrFieldChars() already calls that scheme deprecated. That special > (and undocumented?) scheme did cause significant problems in the past. > I am sure it will continue to cause problems if not removed. Removing > it will simplify code in several tricky places. There will be some > upgrade pains for admins, but we will be better off without > cache_object long-term IMO. Agreed. > Needless to say, squidclient and cachemgr.cgi implementations would > need to be adjusted to use HTTP URLs instead, but I hope those > adjustments are straightforward. cachemgr.cgi should already prefer http(s) and only use cache_object as a backup. IMO the CGI tool should stay that way, supporting the scheme for older installations even after we drop it from the rest of Squid. HTH Amos _______________________________________________ squid-dev mailing list [email protected] http://lists.squid-cache.org/listinfo/squid-dev