Een User-Agent in Squid matchen
Gebruik een req_header-ACL voor een verklaarde clientidentificatie en plaats de toegangsregel vóór een bredere toestemming.
Een User-Agent-ACL matcht de identificatie die een client in zijn HTTP-verzoek zet. In een Squid 7-configuratie kan een testclient worden geclassificeerd met req_header:
acl legacy_probe req_header User-Agent -i ^LegacyProbe/
http_access deny legacy_probe
Het voorbeeld matcht een header die begint met LegacyProbe/, ongeacht hoofdlettergebruik. Vervang het patroon door de bedoelde clientidentificatie. De expressie is een reguliere expressie, geen zoekopdracht naar een browserproductnaam.
Plaats de weigeringsregel vóór elke bredere toegangsregel die het verzoek al zou toestaan. Behoud de bestaande client- en bestemmingscontroles van de proxy rond deze gerichte regel.
Een breed voorvoegsel zoals Mozilla matcht veel verschillende browsers. Gebruik de daadwerkelijke header die de client stuurt bij het bepalen hoe nauw een compatibiliteits- of testbeleid moet zijn.
De client beheert deze header en kan hem wijzigen of weglaten. De regel classificeert een beweerde identificatie; het is geen sterke applicatie-identiteit. Hij werkt ook op HTTP-berichten die Squid kan inspecteren, niet op versleutelde websiteheaders in een gewone CONNECT-tunnel.